快速排序粉碎的例子

时间:2012-05-13 11:02:56

标签: quicksort

我知道quicksort不是稳定的方法,即对于相等的元素,也许数组的成员不会被放置在正确的位置,我需要数组的例子(其中元素重复几次)quicksort不起作用(需要示例三种分区方法)。我无法在互联网上找到这样的阵列示例,你能帮助我吗?

确定我可以使用其他类型的排序方法来解决这个问题(比如堆排序,合并排序等),但我的态度是在实际例子中知道什么样的数据包含quicksort的风险,因为知道它是一种最有用的方法,经常使用

1 个答案:

答案 0 :(得分:2)

无论给出什么数组,Quicksort都不会崩溃。

当排序算法被称为“稳定”或“不稳定”时,它不涉及算法的安全性或是否崩溃。它与维护具有相同密钥的元素的相对顺序有关。

作为一个简短的例子,如果你有:

[9,5,7,5,1]

然后一个'稳定'排序算法应该保证在排序数组中前5个仍然放在第二个5之前。尽管这个简单的例子没有区别,但是有一些例子可以产生差异,例如当基于一列对表进行排序时(您希望其他列保持与以前相同的顺序)。

在此处查看更多内容:http://en.wikipedia.org/wiki/Stable_sort#Stability