operation choice
운영 정렬은 요구 조건을 먼저 잠그고 후보를 남긴다
실무형 정렬 선택은 하나의 최고 알고리즘을 고르는 일이 아니라, 요구 조건으로 후보를 제거하는 일이다.
요구 조건
남길 후보
버릴 후보
안정성이 필수
Merge, TimSort
Heap, 일반 Quick
추가 메모리 제한
Heap, in-place Quick
큰 보조 배열 Merge
최악 시간 보장
Merge, Heap
나쁜 pivot Quick
거의 정렬된 입력
TimSort, Insertion 보조
무조건 재분할하는 구현
핵심: 안정성, 메모리, 최악 시간 중 절대 조건을 먼저 잠그면 선택지가 자연스럽게 줄어든다.