Quicksort算法(Cormen)提供Stackoverflow

Quicksort算法(Cormen)提供Stackoverflow,第1张

Quicksort算法(Cormen)提供Stackoverflow

是的,此透视图方案不是排序数组的正确选择。如您所注意到的,它会导致非常不平衡的分区,导致O(N ^ 2)复杂性和非常深的递归级别。
有一些方法可以改善此行为。例如,您可以对像这样的枢轴使用随机索引,也可以

pivotIdx = start + rand() % (end-start+1);
选择三位数中值方法(索引范围内第一个,最后一个和中间元素的中位数)。

PS避免堆栈溢出的选项-首先对较短的段调用递归,然后对较长的段调用递归。

https://zh.wikipedia.org/wiki/Quicksort#Choice_of_pivot



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/4936365.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存