목록python algorithm (2)
앞날창창이승경 개발 블로그

개념-재귀 알고리즘과 분할정복(Divide and Conquer) 기법이 이용됩니다.-다른 정렬 알고리즘을 이용하면 데이터 수가 많아질 수록 시간이 오래걸리고 메모리가 커지지만(시간 복잡도:N²)퀵정렬은 시간복잡도가 NlogN이므로 훨씬 빠르기때문입니다.(최악의 경우인 리스트가 이미 정렬 되있거나 역순으로 정렬 되어있으면 N²의 시간 복잡도를 가집니다.)CODEdef quick_sort(a) : if len(a) pivot : right.append(i) else : piv.append(i) return quick_sort(left) + piv + quick_sort(right)arr = [10,30,20,40,90,60]print(quic..

목적 -리스트를 정리하기 위해 사용한다. list.sort() arr = [1,3,2,5,4] print(arr) #[1,3,2,5,4] arr.sort() print(arr) #[1,2,3,4,5] -원본(arr)의 내용이 정렬된 내용으로 바뀝니다. -반환 값이 none입니다.(반환을 하지 않음) sorted(list) arr = [1,3,2,5,4] print(sorted(arr)) #[1,2,3,4,5] print(arr) #[1,3,2,5,4] -원본 리스트에는 아무 영향이 없습니다. -새로운 정렬된 리스트를 반환합니다. reverse = True/False 를 이용하여 오름차순 내림차순으로 정렬하기 >>> arr [1, 3, 2, 5, 4] >>> arr.sort(reverse = False) ..