NPE*_*NPE 22 java sorting arraylist
在Java的标准库中,是否有一种方法可以让人们ArrayList在适当的位置进行排序,即使用O(1)额外的存储?
Collections.sort(List<T>) 因为它不符合这个要求
将指定的列表转储到数组中,对数组进行排序,并迭代列表,从数组中的相应位置重置每个元素.
如果标准库中没有任何内容,可以使用哪些第三方库来执行此操作?
Pet*_*rey 14
您可以提取底层数组(例如反射)并在其上执行Arrays.sort(array,0,list.size()).
在对数组进行排序之前,Java 7不会在Arrays.sort()中复制数组.在Java 6中,它意味着Java 6中的Collections.sort()实际上复制了底层数组TWICE以执行排序.