[英]Sorting an array of partially sorted primitive integers in Java
使用Arrays.sort
:
int[] array = /* something */;
Arrays.sort(array);
仅一行,这(非常明显)既易于使用又可读性强。 在编写代码时,这应该是您的第一要务。 由于标准库的编写者已经在性能上付出了很多努力, 尤其是与排序算法有关,这也将很快实现。
唯一不应该使用Arrays.sort
是,如果您几乎完全完成了系统的工作,仔细地分析了系统,并确定对数组进行排序的代码部分就是瓶颈。 即使那样,您仍然可能无法编写性能明显更好的自己的排序算法。
取决于“几乎已排序”的意思。 如果对数组进行几乎排序(排序时的线性复杂度),则插入排序是一种非常有效的算法,但是性能会因异常值是接近还是远离其最终排序位置而有所不同。 例如, [1,2,3,4,6,5,7,8,9]
排序速度将比[1,3,4,5,6,7,8,9,2]
快一些。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.