采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
经我测试Java确实存在这个问题。似乎和Java8以后Java版本的底层优化有关。如果使用Java7进行测试的话,近乎是100%插入排序快于选择排序的。目测和插入排序的过程中,访问数组元素的操作更多有关。
不过大家不用太过纠结于这个问题。在实际生产环境中,选择排序近乎是没有用武之地的。在这里,关键是大家要了解插入排序的一个非常重要的性质:对于近乎有序的数组,插入排序非常快!我们后续的算法优化,是要利用这个性质的:)
N很大的话选择比有序快,N小和数组接近有序插入会比选择快
朋友这问题得到解答了吗
同样遇到这个问题,实验发现使用了comparable接口之后就会产生这个结果,但原因不明
请测试一下使用这个课程的官方java代码实现是不是也是这样?
https://github.com/liuyubobobo/Play-with-Algorithms/tree/master/02-Sorting-Basic/Course%20Code%20(Java)/06-Insertion-Sort-Advance/src/bobo/algo
我实验了这个代码效果也是一样的。。。。
登录后可查看更多问答,登录/注册
课程专为:短时间内应对面试、升职测评等艰巨任务打造
8.8k 21
5.7k 3
4.9k 5
1.4k 18