我即将使用 Java 代码对数千个数字进行排序,最好的方法是什么? 能够有效处理连续数字的最佳排序算法是什么?
我尝试过简单选择排序和快速排序,但是选择排序的时间复杂度是O(n2),快速排序的时间复杂度是O(n*log(n))。
我正在寻找非常好的算法来有效地对我的数据进行排序。
快速排序通常比其他算法表现得更好(它也没有任何额外的内存需求,并且具有较小的隐藏常数)。
没有比
n*log(n)
更好的排序算法了,如果你找到了,你可以立即去获得诺贝尔奖:)
我建议你看看Sorting.java 它对数据的排序速度比以往任何时候都快,该算法的时间复杂度将为 2N,这是迄今为止最好的。
注意:
我也很感谢有关 this 存储库的任何建议。