java 排序總結
阿新 • • 發佈:2019-03-07
排序準備
/** * 數字交換 * * @param nums * @param i * @param j */ public void swapNums(T\[\] nums,int i,int j){ T temp = nums\[i\]; nums\[i\]=nums\[j\]; nums\[j\] = temp; } /** * 大小比較 * */ public boolean lessNums(T a ,T b){ return a.compareTo(b)<0; }
##選擇排序
###選擇出陣列中的最小元素,將它與陣列的第一個元素交換位置。再從剩下的元素中選擇出最小的元素,將它與陣列的第二個元素交換位置,不斷執行這樣的操作
public void selectSort(T[] nums) {
int n = nums.length;
for (int i=0;i<n;i++){
int min = i;
for(int j=i+1;j<n;j++){
if(lessNums(nums[j] , nums[min])){
min = j;
}
}
swapNums(nums,i,min);