같은 점수의 순서
입력이 가영 5점, 나래 3점, 다온 5점이라면 점수 오름차순의 안정 정렬 결과는 나래, 가영, 다온이다. 5점 두 사람의 원래 순서가 유지된다. 다온을 가영 앞에 두어도 점수순 자체는 맞지만 안정 조건은 깨진다.
여러 기준을 적용하기
이름순으로 정렬한 뒤 점수 기준으로 안정 정렬하면 같은 점수 안에서 이름순이 유지된다. 나중의 정렬 기준이 주된 기준이 되고 앞서 정한 순서는 같은 키 안에서 남는다.
알고리즘과 구현
버블 정렬은 같은 키끼리 교환하지 않는 표준 방식에서 안정성을 갖는다. 병합 정렬도 병합 때 같은 키에서 왼쪽 원소를 먼저 택하는 방식으로 안정성을 유지한다. 이름만이 아니라 구체적인 같은 키 처리 규칙을 확인한다.
원래 위치를 추가하기
키에 원래 위치를 보조 기준으로 붙여 동일 키에서 위치순으로 비교하는 방법도 있다. 이는 입력 순서를 명시적인 정렬 조건으로 만드는 것이다. 안정성은 빠르거나 메모리를 적게 쓴다는 의미가 아니다.
관련 문서
정렬 알고리즘 / 기수 정렬 / 계수 정렬 / 버블 정렬 / 병합 정렬 / 힙 정렬 / 시간 복잡도 / 배열