본문 바로가기

알고리즘/기타퀴즈

Quiz20, Quiz21 (정렬방법)

반응형

안녕하세요. pitang입니다.
정렬방법에 대해 퀴즈를 풀며 알아보도록 하겠습니다.

Quiz20

중첩반복문을 이용해 배열을 정렬하세요.
arr = {5, 23, 1, 43, 100, 200, 40};
오름차순으로 배열을 정리하면 됩니다.
자동정렬(Arrays.sort)를 이용해서도 배열을 정리해보세요.

<console>
전체배열은 [1, 5, 23, 40, 43, 100, 200]
자동정렬은 [1, 5, 23, 40, 43, 100, 200]


⬇️⬇️⬇️정답은 더보기를 눌러주세요⬇️⬇️⬇️

더보기
public class Quiz20 {

	public static void main(String[] args) {
    
    	int[] arr = {5, 23, 1, 43, 100, 200, 40};
        
        //선택정렬
        for(int i = 0; i < arr.length-1; i++) {
        	for(int j = i+1; j < arr.length, j++) {
            	if(arr[i] > arr[j]) {
                	int temp = arr[i];
                    arr[i] = arr[j];
                    arr[j] = temp;
                }
            }
        }
    	System.out.println("전체배열은 " + Arrays.toString(arr));
    	
        //자동정렬
        Arrays.sort(arr);
        System.out.println("자동정렬은 " + Arrays.toString(arr));
    }
}

 

Quiz21

버블정렬을 이용해 배열을 정렬하세요.
arr = {5, 23, 1, 43, 100, 200, 40};
오름차순으로 배열을 정리하면 됩니다.

<console>
전체배열은 [1, 5, 23, 40, 43, 100, 200]


⬇️⬇️⬇️정답은 더보기를 눌러주세요⬇️⬇️⬇️

더보기
public class Quiz21 {

	public static void main(String[] args) {
    
    	//버블정렬(속도가 가장 느리기로 유명하다.)
    	int[] arr = {5, 23, 1, 43, 100, 200, 40};
        
        for(int i = arr.length-1; i > 0; i--) {
        	for(int j = 0; j < i; j++) {
            	if(arr[j] > arr[i]) {
                	int temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
    	System.out.println(Arrays.toString(arr));
    }
}

 

 

감사합니다.

 

*m1맥북을 사용 중입니다.*

728x90
반응형

'알고리즘 > 기타퀴즈' 카테고리의 다른 글

MethodQuiz01, MethodQuiz02  (0) 2021.08.31
Quiz22, Quiz23  (0) 2021.08.30
Quiz18, Quiz19 (중첩반복문)  (0) 2021.08.26
Quiz16, Quiz17 (중첩반복문)  (0) 2021.08.26
Quiz14, Quiz15 (for문)  (0) 2021.08.26