代码之家  ›  专栏  ›  技术社区  ›  Michael

为什么快速排序的平均速度比其他人快?

  •  8
  • Michael  · 技术社区  · 14 年前

    如我们所知,QuickSort的性能平均为O(n*log(n)),但合并和堆排序的性能也平均为O(n*log(n))。所以问题是为什么快速排序平均速度更快。

    3 回复  |  直到 14 年前
        1
  •  3
  •   Milan    14 年前
        2
  •  9
  •   Community CDub    8 年前

    Wikipedia suggests

    排序并使用辅助存储器,它是 非常适合现代计算机 体系结构。

    也可以看看 comparison with other sorting algorithms 在同一页上。

    也见 Why is quicksort better than other sorting algorithms in practice? 在CS网站上。

        3
  •  3
  •   Paddy3118    14 年前

    Timsort 可能是 better 选项,因为它是针对一般排序时看到的数据类型而优化的,在Python语言中,数据通常包含预排序项的嵌入“运行”。它最近也被Java采纳了。