목록소트 (2)
Prosto
'빠르게 정렬하는 방법으로 가장 많이 사용되는 퀵정렬' 퀵 정렬은 빠른 정렬이나 퀵 소트(Quick Sort)라고도 부릅니다. 퀵 정렬(Qucik Sort)는 데이터를 정렬하는 방법 중 하나입니다. 데이터를 분할(Divide)하고 분할된 부분 별로 이동하는 정복(Conquer) 과정을 반복하여 거쳐 정렬하는 방법입니다. (지금까지의 정렬들과 달리 조금은 복잡합니다만 보고, 직접 해보며 이해할 수 있을 겁니다.) 성능을 Big O로 표기한다면 average, best = O(n log n)이고, worst = O(n^2)입니다. 일반적으로는 O(n log n)의 성능을 내주지만, 피봇(중심점이) 항상 최솟값이나 최댓값으로 잡힌다면 최악의 성능인 O(n^2)이 나옵니다. 참고로 지금까지 했던 (선택, 삽입,..
'보글보글 거품 같이 차례차례 정렬하는 버블정렬' 버블정렬은 거품정렬이나 버블소트(Bubble Sort)라고도 부릅니다. 버블정렬은 데이터 정렬을 하는 방법 중 하나입니다. 첫 번째 자료와 두 번째 자료, 두 번째 자료와 세 번째 자료, 세번째와 네 번째 자료를 비교하는 식으로 정렬을 진행합니다. (아래 그림 보시면 이해가 빠를 겁니다.) 여러 회전을 반복하여 정렬하는 방법입니다. 첫 번째 회전에서는 첫 번째 자료와 두 번째 자료를 비교하여 첫 번째 자료가 더 큰 경우 첫 번째와 두 번째 자료를 바꿉니다. (두 번째가 더 큰 경우는 안 바꿈 ) 그리고 두 번째 자료와 세 번째 자료를 비교하여 위와 같은 작업을 해줍니다. 마찬가지로 세 번째와 네 번째, 그렇게 마지막 자료까지 비교해줍니다. (그렇다면 결과..