선택 정렬 (Selection Sort)
주어진 데이터 중 가장 작은 값부터 차례대로 선택해서 나열하는 방식
정렬되지 않은 데이터 중 가장 작은 값 선택 후 첫 번째 요소와 교환
시간복잡도 O(n²)
function selectionSort(array) {
const len = array.length;
let minIndex, temp;
for (i = 0; i < len - 1; i++) { // 처음부터 훑으면서
minIndex = i;
for (j = i + 1; j < len; j++) { // 최솟값 위치 찾고
if (array[j] < array[minIndex]) {
minIndex = j;
}
}
temp = array[minIndex]; // 최솟값 저장
array[minIndex] = array[i];
array[i] = temp; // 최솟값을 앞으로 전달
}
return array;
};
selectionSort([5,1,4,7,2,6,8,3]); // [1,2,3,4,5,6,7,8]


Last updated