이런저런 IT 이야기

퀵 정렬 알고리즘(Quick Sort Algorithm) 본문

Algorithm

퀵 정렬 알고리즘(Quick Sort Algorithm)

이런저런 IT 이야기 2023. 5. 23. 13:20
반응형

function quickSort(arr) {
  if (arr.length <= 1) {
    return arr;
  }

  const pivot = arr[arr.length - 1];
  const left = [];
  const 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)];
}

// Example usage
const unsortedArray = [5, 8, 2, 10, 1, 6, 9, 3, 7, 4];
const sortedArray = quickSort(unsortedArray);

console.log(sortedArray);

 

위의 예제에서는 quickSort 함수를 사용하여 주어진 배열 arr을 퀵 정렬하여 정렬된 배열을 반환합니다. 퀵 정렬은 분할 정복(divide and conquer) 방법을 사용하여 배열을 작은 부분 배열로 분할하고, 각 부분 배열을 재귀적으로 정렬하며 합쳐나가는 방식으로 동작합니다.

이 예제를 통해 퀵 정렬 알고리즘의 동작 방식과 구현 방법을 이해할 수 있습니다. 퀵 정렬은 일반적으로 평균적으로 빠른 속도를 가지는 정렬 알고리즘으로 알려져 있습니다.

반응형