퀵 정렬이 안정성이 없다고 알려져있습니다.

하지만 위 그림과 같이, 1. pivot과 같은 원소들을 따로 저장(sav, O(n)) 2. before-pivot, after-pivot를 따로 생성 3. before-pivot + sav + after-pivot을 연결

을 하게 되면 안정성이 유지되는 것이 아닌가 싶습니다.

이렇게 하면 안정성이 유지가 되지만(아마도) 1번에서 O(n)의 연산이 추가로 수행되어 퀵정렬의 이점이 사라지게 되긴 합니다.


이에 대해 어떻게 생각하시나요?