728x90
import java.util.Arrays;
public class Main {
public static void main(String[] args){
int[] arr = {7, 5, 9, 0, 3, 1, 6, 2, 4, 8};
for(int i=0; i<arr.length; i++){
int minindex = i;
for(int j=i+1; j<arr.length; j++){
if(arr[minindex]>arr[j]){
minindex = j;
}
}
int tmp = arr[i];
arr[i] = arr[minindex];
arr[minindex] = tmp;
}
System.out.println(Arrays.toString(arr));
}
}

위 움짤을 보면 이해하기 쉬울 것이다.
선택정렬은 시간복잡도가 O(n^2)인 정렬 알고리즘이다.
자세한 설명은 본인이 공부하면서 정리한 노트를 첨부할테니 참고하길 바란다.

728x90
'알고리즘' 카테고리의 다른 글
[Java] 정렬 알고리즘 - 버블정렬(Bubble Sort) (0) | 2023.02.02 |
---|---|
[Java] 정렬 알고리즘 - 삽입정렬(Insertion Sort) (0) | 2023.01.27 |