Computer Science/Data Structure & Algorithm
Quick Sort(퀵 정렬)
Dan-k
2020. 1. 23. 17:48
반응형
이진분할로 중간 pivot을 이용해 데이터를 정렬하는 기법
recursion을 이용하면..간단히(?) 풀 수 있다.
def quick_sort(arr):
if len(arr) <= 1:
return arr
pivot = arr[len(arr) // 2]
lesser_arr, equal_arr, greater_arr = [], [], []
for num in arr:
if num < pivot:
lesser_arr.append(num)
elif num > pivot:
greater_arr.append(num)
else:
equal_arr.append(num)
return quick_sort(lesser_arr) + equal_arr + quick_sort(greater_arr)
728x90
반응형
LIST