<aside> 📖 Contents
</aside>
초기 상태의 리스트 하나를 두 개의 리스트가 되도록 분할해 나가면서 최종적으로 길이가 1이 될 때까지 분할한다.
길이 1로 분할된 애들을 다시 길이 2가 되도록 합쳐준다.
길이 2인 부분 리스트들을 길이가 4인 부분리스트가 되도록 만들어준다. 왼쪽과 오른쪽 리스트를 비교하는데, 결과값이 더 작은 애들을 차례대로 결과리스트에 넣어주는 과정이다.
{5, 6} {1, 3}
{7, 8} {2, 4}
코드로 구현할 때는, 결과리스트에 들어가지 못한 인덱스는 그대로 두고, 결과리스트에 들어간 인덱스를 한칸 증가시킨다.
이제 길이가 4인 부분 리스트들을 길이가 8인 부분리스트가 되도록 정렬
O(nlogn)
logN
의 비용N
번의 비용이 듬O(nlogn)