퀵정렬1 Quick Sort (퀵 소트) Quick Sort는 전형적인 분할 정복(divide and conquer) 알고리즘의 하나입니다. 이름만큼 평균적으로 매우 빠른 수행 속도를 자랑하며 시간복잡도 O(n log n)을 가지고, 추가 메모리 공간을 필요로 하지 않기 때문에 O(log n)만큼의 메모리를 필요로 합니다. Merge Sort와 달리 Quick Sort는 비균등 분할을 합니다. 리스트 안에 있는 한 요소를 선택하는데, 이때 이 원소를 pivot이라 합니다. 입력 배열을 pivot을 기준으로 비균등하게 2개의 부분 배열로 분할합니다. 이 때, pivot의 왼쪽은 pivot보다 작은 요소들로, pivot의 오른쪽은 pivot보다 큰 요소로 이루어지게 됩니다. (divide) 이렇게 분할한 부분 배열을 정렬합니다. 부분 배열의 크기가.. 2021. 2. 12. 이전 1 다음