인프런 커뮤니티 질문&답변
special sort 이런거도 가능할까요 ?
작성
·
182
0
function solution2(arr) {
let answer = arr;
let n = arr.length;
for (let i = 0; i < n; i++) {
for (let j = 0; j < n - 1 - i; j++) {
// 6회전일때 0, 1, 2 ( n - 1 - i)번째를 비교하게 되는데 그때 오름차순으로 정렬 되는 걸 막음
// n - answer.filter((v) => v < 0).length = 5
if (i === n - answer.filter((v) => v < 0).length) break;
if (arr[j] > arr[j + 1]) {
let tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
return answer;
}
음수의 갯수만 뽑아서 버블 소트 회전을 특정하게 막도록했는데..
퀴즈
선택 정렬 알고리즘의 핵심 과정은 무엇일까요?
인접한 두 요소를 비교하여 순서가 맞지 않으면 교환합니다.
정렬되지 않은 부분에서 가장 작은 값을 찾아 정렬된 부분의 올바른 위치로 옮깁니다.
배열을 반으로 나누고 각 부분을 재귀적으로 정렬한 후 병합합니다.
하나의 요소를 정렬된 하위 배열의 올바른 위치에 삽입합니다.





