使用随机数据透视表的快速实现

时间:2013-04-24 06:13:31

标签: quicksort

是否有广泛使用的Quicksort实现使用随机选择的支点?

我问,因为the C library qsort function是使用“Tukey’s ‘ninther’, the median of the medians of three samples, each of three elements”实现的,并且表现明显优于随机快速排序。

1 个答案:

答案 0 :(得分:0)

理论上,随机枢轴Quicksort的预期时间为O(nlogn)

但我认为随机枢轴选择的实现很少,如果存在的话,因为它不实用。原因:

  • 真正随机性的成本在执行时间很长。
  • 使用伪随机意味着可以构造一个输入,将排序驱动为O(n^2)

看看这个黑客新闻主题:https://news.ycombinator.com/item?id=1442849

如果此信息不正确,请告诉我,以便我可以更新此答案。