728x90
반응형
function quickSort(arr){
if(arr.length<2){
return arr;
}
let pivot = arr[arr.length - 1]
let left = []
let right = []
for(let i=0;i<arr.length-1;i++){
if(arr[i]<pivot){
left.push(arr[i])
}else{
right.push(arr[i])
}
}
return [...quickSort(left),pivot,...quickSort(right)]
}
const arr = [8, 20, -2, 4, -6];
console.log(quickSort(arr)); //-6 -2 4 8 20
// Worst case: O(n^2)
// Avg case: O(nlogn)
728x90
반응형
'개발공부 일지 > 코테' 카테고리의 다른 글
자릿수 합치기 - 자바스크립트, JS (0) | 2023.06.17 |
---|---|
병합 정렬(merge Sort) - 자바스크립트(JS), C#(씨샵) (0) | 2023.06.15 |
삽입 정렬(Insertion Sort) - 자바스크립트, JS (0) | 2023.06.12 |
이진 탐색(Binary Search)-JS, 자바스크립트 (1) | 2023.02.05 |
프로그래머스 - 핸드폰 번호 가리기(JS, 자바스크립트)(정규표현식-전방탐색) (0) | 2023.02.02 |
댓글