Skip to content

Latest commit

 

History

History
32 lines (26 loc) · 873 Bytes

선택정렬.md

File metadata and controls

32 lines (26 loc) · 873 Bytes

선택 정렬

  • 선택 정렬은 배열을 처음부터 훑어서 가작 작은 수를 제일 앞에 가져다 놓는다. 그 다음, 다시 배열을 훑어서 두 번째로 작은 수를 두 번째 칸에 놓는다. 이 과정을 계속 반복한다.
const selectSort = function (arr) {
  let minNum = 0;
  let temp = 0;
  for (let i = 0; i < arr.length - 1; i++) {
    // 처음부터 훑으면서
    minNum = i;
    for (let j = i + 1; j < arr.length; j++) {
      if (arr[j] < arr[minNum]) {
        minNum = j;
      }
    }
    temp = arr[minNum]; // 최솟값을 저장
    arr[minNum] = arr[i];
    arr[i] = temp; // 최솟값을 제일 앞으로 보냄
  }
  return arr;
};

// 예시 배열
selectSort([5, 1, 4, 7, 2, 6, 8, 3]); // [1,2,3,4,5,6,7,8]

참고