对于几乎排序的列表,哪种排序技术最好?为什么?对于许多元素的列表,我发现快速排序是有帮助的。但是当它已经排序时哪种类型的运行时间更好?
答案 0 :(得分:0)
当列表几乎已排序时,插入排序具有线性性能。
检查:http://www.sorting-algorithms.com/nearly-sorted-initial-order
考虑到相对排序,插入将元素放置在正确的位置,因此需要n-1次迭代。其他类似快速排序再次尝试再次排序已排序的段,因为它不知道相对排序(即,如果段已经排序)。
答案 1 :(得分:0)
您的问题过于宽泛,但是如果输入数组已经排序,则插入排序的执行次数与n-1次比较一样,这样可以提高插入排序效率
你可能会觉得这篇论文很有帮助 Best sorting algorithm for nearly sorted lists