冒泡算法
因為最後的數字必定是最大,所以第二次歸遞時不用檢查最後兩個數字。
快速排序算法
public static void main(String []args){
int[] arrNum = {12,20,5,16,15,1,30,45,23,9};
int start = 0;
int end = arrNum.length-1;
sort(arrNum,start,end);
System.out.print("\n Sorting array:"+Arrays.toString(arrNum));
}
public static void sort(int[] arrNum,int low,int high){
int start = low;
int end = high;
int key = arrNum[low];
while(end!=start){
while(end>start&&arrNum[end]>=key) {
end--;
}
if(arrNum[end]<=key){
int temp = arrNum[end];
arrNum[end] = arrNum[start];
arrNum[start] = temp;
}
while(end>start&&arrNum[start]<=key) {
start++;
}
if(arrNum[start]>=key){
int temp = arrNum[start];
arrNum[start] = arrNum[end];
arrNum[end] = temp;
}
}
if(start>low) {
sort(arrNum,low,start-1);
}
if(end<high) {
sort(arrNum,end+1,high);
}
}
插入排序