我理解就地排序算法的属性的重要性。
我知道稳定性有助于维持相对秩序,但该算法的稳定性是否会影响其性能?
发布于 2016-04-19 18:48:18
维基百科:
一个排序算法是稳定的,如果有两个记录R和S具有相同的键,而R出现在原始列表中的S前面,那么R总是出现在排序列表中的S前面。
关于你的问题:
该算法的稳定性是否影响其性能?
我认为一个算法的稳定性与其效率无关,是两个独立的概念。
稳定性是排序算法具有或不依赖于其性质的一种属性,但它就像一种“副作用”,不会直接影响其性能。
通过增加一个额外的索引键来比较主键是否匹配,可以很容易地将不稳定的算法转换为稳定的。
如果您的问题是如何实现一个稳定的排序算法,那么稳定性可能会影响,因为这是一个额外的要求遵守。
为什么有这个必要?
您可以在这个question中读到稳定算法的好处。
https://stackoverflow.com/questions/36725817
复制相似问题