一尘不染

快速排序与堆排序

algorithm

quicksort和heapsort都进行就地排序。哪个更好?在哪种应用和情况下首选哪种?


阅读 230

收藏
2020-07-28

共1个答案

一尘不染

本文进行了一些分析。

另外,来自维基百科:

快速排序最直接的竞争对手是堆排序。堆排序通常比快速排序慢一些,但最坏的运行时间始终是Θ(nlogn)。Quicksort通常会更快,但是除了introsort变体之外,仍然存在最坏情况下的性能的机会,introsort变体会在检测到不良情况时切换到堆排序。如果事先知道有必要使用堆排序,那么直接使用它比等待内向排序切换到它要快。

2020-07-28