퀵 정렬 Quick Sort 퀵 정렬 시간복잡도는 Worst 경우 O(n^2), Average : O(nlogn), Best - O(nlogn) pivot을 어떻게 설정하느냐에 따라 성능이 달라질 수 있음 값들이 이미 정렬되어 있는 경우 Worst Case : Random하게 섞어주는 방식 사용 가능 퀵정렬 과정 리스트 개수가 1개일 때 재귀 종료 0번째 값을 pivot으로 설정 pivot보다 작거나 큰 값을 low, high 리스트에 저장 저장한 low, high에 각각 재귀적으로 quick을 적용 최종 low, high, pivot을 병합 def quick(data): # 재귀 함수 종료 조건 if len(data) < 2: return data result = [] # pivot값 설정 pivot ..