퀵 정렬(Quick Sort) 이란?
- 대표적인 분할 정복 알고리즘으로 평균 속도가 O(N*logN) 이다.
- 퀵 정렬은 불안정 정렬에 속하며, 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬에 속한다.
퀵 정렬(Quick Sort) 알고리즘의 특징
- 특정한 값을 기준으로 큰 숫자와 작은 숫자를 서로 교환한 뒤에 배열을 반으로 나눈다.
- 퀵 정렬에는 ‘기준 값’이 있는데 이를 피벗(pivot) 이라고도 한다.
- 퀵 정렬은 이미 정렬이 되어 있는 경우 시간복잡도는 O(N^2)에 가깝다.
- 그러나, 삽입 정렬의 경우 빠르게 해결 가능하다.
퀵 정렬(Quick Sort)의 알고리즘 예시
Source Code
퀵 정렬(Quick Sort)의 시간복잡도
- 퀵 정렬의 시간복잡도는 O(N*logN) 이다.
정렬 알고리즘 시간복잡도 비교
관련된 Post
References