반례 점검 지도

정렬 반례는 입력 분포별로 묶어 추적한다

병합, 퀵, 힙 정렬은 실패 지점이 다릅니다. 이미 정렬됨, 역순, 중복 다량을 나눠 넣으면 경계 버그와 안정성 누락을 빠르게 찾을 수 있습니다.

입력 분포먼저 넣을 반례
병합 정렬병합과 안정성
퀵 정렬피벗과 분할
힙 정렬힙 기준과 복원
[1,2,3,4,5]정렬된 입력
남은 구간 append왼쪽/오른쪽 잔여 원소 누락 확인
한쪽 분할피벗 선택이 나쁘면 재귀 깊이 증가
heapify 범위정렬 완료 구간을 다시 건드리지 않기
[5,4,3,2,1]역순 입력
비교 조건<=로 안정성 유지 여부 확인
무한 재귀i, j 이동과 종료 조건 점검
최대/최소 혼동오름차순이면 최대 힙 추출 방향 확인
[3,3,3,3]중복 다량
동일 키 순서원래 상대 순서가 남는지 객체로 검사
동등값 처리피벗과 같은 값에서 포인터가 멈추지 않기
비안정성 인지같은 키 순서 보존이 요구인지 분리
Merge

잔여 원소와 안정성

병합 루프가 끝난 뒤 왼쪽과 오른쪽 나머지를 모두 붙이는지 본다.

Quick

피벗 치우침과 경계

정렬/역순/중복 입력에서 포인터가 반드시 전진하는지 확인한다.

Heap

루트 교환과 heapify

끝으로 보낸 값이 다시 힙 구간에 섞이지 않는지 범위를 고정한다.