선택 정렬(Selection Sort)

DEV_HOYA·2023년 10월 10일
0
post-thumbnail

📌 선택정렬(Selection Sort)

⭐ 개념

  • 데이터에서 최소값을 찾아 맨 앞자리와 교환하는 알고리즘
  • 라운드를 진행할수록 앞데이터는 최소값들이 채워지므로 데이터가 한개씩 줄어듬
  • 시간복잡도 O(n²)

⭐ 코드

int[] arr = {67, 29, 34, 20, 11, 70, 53};
		
for(int i=0; i<arr.length-1; i++) {
	int min_index = i;
	
    // 최솟값 인덱스 찾기
	for(int j = i+1; j<arr.length; j++) {
		if(arr[j] < arr[min_index]) {
			min_index = j;
		}
	}
	
    // i번째 값과 최솟값을 서로 교환
	int temp = arr[min_index];
	arr[min_index] = arr[i];
	arr[i] = temp;
}

for(int i=0; i<arr.length; i++) {
	System.out.print(arr[i] + " ");
}

/*
출력
11 20 29 34 53 67 70 
*/

0개의 댓글