Selection Checklist

고급 정렬은 요구 조건을 잠근 뒤 후보를 좁힌다

평균 속도만 보지 말고 안정성, 메모리, 최악 시간, 직접 구현 리스크를 먼저 체크합니다.

동일 키 순서가 중요하다로그/거래/이벤트처럼 기존 순서를 보존해야 합니다.
Merge sort
평균 속도와 locality가 중요하다일반 배열 정렬에서 빠른 평균 성능을 기대합니다.
Quick sort
최악 시간 보장이 필요하다입력 분포를 믿기 어렵다면 O(N log N) 보장을 우선합니다.
Merge
Heap
추가 메모리가 빡빡하다보조 배열 O(N)이 부담이면 제자리 성질을 봅니다.
Heap sort
직접 구현 검증이 목적이다partition, merge, heapify 로그를 각각 남깁니다.
Debug log
실무 코드라면검증된 내장 정렬의 안정성/최악 보장부터 확인합니다.
Built-in first
판정 순서: 안정성 요구 → 메모리 제한 → 최악 보장 → 평균 성능 순서로 잠급니다.