Ste*_*hen 7 java memory sorting algorithm
我想要排序大量的字符串(特别是File.list(),我不能外部化或进一步减少),而不使用[多]额外的内存.
File.list()
Arrays.sort()说它做了一个合并排序,维基百科说一些实现分配原始数组的大小来存储排序的输出.(这似乎得到System.arraycopy了方法中的参考支持).
Arrays.sort()
System.arraycopy
是否有一个就地排序算法我可以使用而不是内存效率?
dle*_*lev 6
quicksort是就地而且非常快.看到这里.
Dan*_*ode 5
String在Java中是不可变的.因此,当String你的问题中的s 数组重复时,它们不需要像你期望的那样多的空间.实际上,开销可能非常小.
String
换句话说,Java Arrays#sort()可以很好地适用于您的解决方案.您可以自己测试性能.
Arrays#sort()
对于你问题的标题,Ankit的答案和dlev的答案都很好.
归档时间:
14 年,3 月 前
查看次数:
2810 次
最近记录: