병합 정렬 알고리즘(Merge Sort) 병합 정렬은 데이터 배열을 정확히 반으로 나누고 나중에 합쳐서 정렬하는 방식입니다. 정확하게 5:5로 나누기때문에 피벗(Pivot)이 존재하지 않습니다. 8 2 6 5 1 4 2 7 위와 같은 수가 있을 때 수들을 오름차순하는 병합 정렬을 해보겠습니다. 8개의 데이터를 나눌 수 없을때까지 반으로 나누면 크기가 1인 배열로 나누어집니다. 8 | 2 | 6 | 5 | 1 | 4 | 2 | 7 나누는 과정이 끝났다면 이제 데이터를 2의 배수만큼 합치고 합치는 순간 각각을 정렬합니다. 1차 합 : 2 8 | 5 6 | 1 4 | 2 7 2차 합 : 2 5 6 8 | 1 2 4 7 3차 합 : 1 2 2 4 5 6 7 8 알고리즘 구현 // Algorithm Analysi..
[알고리즘] 병합 정렬 알고리즘 (Merge Sort)
병합 정렬 알고리즘(Merge Sort) 병합 정렬은 데이터 배열을 정확히 반으로 나누고 나중에 합쳐서 정렬하는 방식입니다. 정확하게 5:5로 나누기때문에 피벗(Pivot)이 존재하지 않습니다. 8 2 6 5 1 4 2 7 위와 같은 수가 있을 때 수들을 오름차순하는 병합 정렬을 해보겠습니다. 8개의 데이터를 나눌 수 없을때까지 반으로 나누면 크기가 1인 배열로 나누어집니다. 8 | 2 | 6 | 5 | 1 | 4 | 2 | 7 나누는 과정이 끝났다면 이제 데이터를 2의 배수만큼 합치고 합치는 순간 각각을 정렬합니다. 1차 합 : 2 8 | 5 6 | 1 4 | 2 7 2차 합 : 2 5 6 8 | 1 2 4 7 3차 합 : 1 2 2 4 5 6 7 8 알고리즘 구현 // Algorithm Analysi..
2021.07.06