헬창 개발자

[알고리즘] 퀵 정렬 본문

알고리즘

[알고리즘] 퀵 정렬

찬배 2021. 12. 4. 03:18
소스코드
def quick_sort(arr):
    if len(arr) <=1:
        return arr
    pivot = arr[len(arr)//2]
    small_arr, equal_arr, big_arr = [],[],[]
    for num in arr:
        if num < pivot:
            small_arr.append(num)
        elif num > pivot:
            big_arr.append(num)
        else:
            equal_arr.append(num)
    return quick_sort(small_arr) + equal_arr + quick_sort(big_arr)

if __name__ == "__main__":
    n = int(input())
    arr=[]
    for i in range(n):
        input_num = int(input())
        arr.append(input_num)
    arr = quick_sort(arr)
    for i in arr:
        print(i, end=" ")
알고리즘 설계

알고리즘 설명

결과화면

 

Comments