fblood53   2년 전

위쪽은 내장함수를 이용했고 아래쪽은 퀵소트를 구현해보았습니다 퀵소트가 N이 너무 작지 않을때 가장 빠른 정렬 알고리즘으로 알고있었는데 시간 초과가 떠서 질문을 남깁니다 혹시 피벗선택의 방식이 이상해서 o(n^2) 이 되고있는 걸까요? 구현 방식에 문제가 있거나 효율적이지 못하다면 충고를 받고싶습니다.

djm03178   2년 전

퀵소트는 매우 느린 정렬입니다. 평균적인 경우에만 빠를 뿐, 최악의 경우 O(N^2)이 되며 실질적으로는 버블소트보다도 못한 속도를 냅니다.

fblood53   2년 전

답변 감사합니다! 그렇다면 pivot 선택이 최적의 선택이라는 가정 하에 가장 빠르다는 것일까요? 실제로는 그런 경우는 거의 없다고 보면 될까요?

djm03178   2년 전

가장 빠르다는 말을 어디서 보신 건지 모르겠지만 일반적으로도 다른 NlogN 정렬들에 비해 그다지 빠르진 않습니다. 자바의 Arryas.sort 정도에서만 dual-pivot quicksort를 사용하기는 합니다.

fblood53   2년 전

넵 친절한 답변 감사합니다!

댓글을 작성하려면 로그인해야 합니다.