백준 알고리즘 기초 강좌
5장 정렬 - (5) Stable Sorting
살구르
2017. 10. 10. 18:21
1. Stable Sorting
-같은 것이 있는 경우에 정렬하기 전의 순서가 유지되는 정렬 알고리즘
-예를 들어, 다음을 숫자가 증가하는 순서로 정렬했을 때
5○, 4○, 3○, 3●, 2○, 1○
=>1○, 2○, 3○, 3●, 4○, 5○
또는
=>1○, 2○, 3●, 3○, 4○, 5○
위와 같이 3에 대해서 두 가지의 결과가 나올 수 있다.
이 때, 첫번째 결과처럼 정렬하기 전의 순서가 유지되는 정렬 알고리즘이 stable 한 정렬이다.
2. 시간복잡도가 N^2인 stable sorting
-버블 정렬
3. 시간복잡도가 NlgN 인 stable sorting
-병합 정렬(Merge Sort)
-STL에는 stable_sort 알고리즘 사용
4. 문제
-10814번(나이순 정렬)
-10825번(국영수)
-10989번(수 정렬하기 3)