可以實現比較器Comparator來定制排序方案,同時使用Colletions.sort的方式進行排序,代碼如下:
public void sortDesc(List<Long> s){
Collections.sort(s, new Comparator<Long>() {
public int compare(Long o1, Long o2) {
Long result = o2 - o1;
return result.intValue();
}
});
s.forEach(item->{
System.out.print(item +" ");
});
}
同時常用的比較排序算法主要有:冒泡排序,選擇排序,插入排序,歸並排序,堆排序,快速排序等。
java的冒泡排序實現如下:
public?static?void?bubbleSort(int?[]arr)?{for(int?i?=0;i<arr.length-1;i++)?{for(int?j=0;j<arr.length-i-1;j++)?{//-1為了防止溢出if(arr[j]>arr[j+1])?{int?temp?=?arr[j];?arr[j]=arr[j+1];?arr[j+1]=temp;}}}}還有非比較排序,時間復雜度可以達到O(n),主要有:計數排序,基數排序,桶排序等。