氣泡排序演算法的運作如下:(從後往前)
比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。
對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
針對所有的元素重複以上的步驟,除了最後乙個。
持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。 [1]
public static void bubbling() ;
for(int i=0;ifor(int j=0;jif(arr2[j]>arr2[j+1]) }}
system.out.println(arrays.tostring(arr2));
}①找出位於陣列中間的值,並存放在乙個變數中(為了下面的說明,變數暫時命名為temp);
②需要找到的key和temp進行比較;
③如果key值大於temp,則把陣列中間位置作為下一次計算的起點;重複① ②。
④如果key值小於temp,則把陣列中間位置作為下一次計算的終點;重複① ② ③。
⑤如果key值等於temp,則返回陣列下標,完成查詢。
public class work03 ;
int i = binsearch(nums,1);
system.out.println(i);
}public static int binsearch(int srcarray, int key)
int start = 0;
int end = srcarray.length - 1;
while (start <= end) else if (key > srcarray[mid]) else
}
return -1; } }
//快速
public static void fast(int arr2,int start,int end) ;
sort(arr2,start,end);
system.out.println("快速排序"+arrays.tostring(arr2));
}public static void sort(int a,int start,int end)
i=start;
j=end;
index=a[i]; // 基準值
//從表中間往兩邊掃瞄
while(i
while(i=index)
if(i
a[i]=a[j]; // 用比基準小的記錄替換低位記錄
i++;
}while(i
i++;
}if(i
a[j]=a[i];// 用比基準小的記錄替換低位記錄
j--;
}system.out.println(arrays.tostring(a));
}system.out.println("i"+i);
a[i]=index;//基準值替換回a[i]
sort(a, start, i - 1); // 對低子表進行遞迴排序
sort(a, i + 1, end); // 對高子表進行遞迴排序
}//選擇排序
int arr2 = ;
public static void xuanze(int arr2)
}if(i!=k)
}
四種常用的排序演算法
氣泡排序 法 從大到小排序 依次比較相鄰的兩個元素,通過一次比較把未排序序列中最大 或最小 的元素放置在未排序序列的末尾。public classmaopao for intm a system.out print m intt 0 for inti 0 i a.length 1 i for int...
PHP常用的四種排序
所謂排序,就是使一串記錄,按照其中的某個或某些關鍵字的大小,遞增或遞減的排列起來的操作。排序演算法,就是如何使得記錄按照要求排列的方法。排序演算法在很多領域得到相當地重視,尤其是在大量資料的處理方面。乙個優秀的演算法可以節省大量的資源。在各個領域中考慮到資料的各種限制和規範,要得到乙個符合實際的優秀...
java四種引用
1 強引用 諸如object a new object 如果在乙個方法體內,只要方法沒結束,這個物件就不會被 2 軟引用 在將要丟擲out of memory之前首先會 已經無引用 不可達的物件。3 弱引用 在gc時,就會 已經無引用 不可達的物件。4 虛引用 任何時候可能被 好像一般用來跟蹤物件 ...