你會有代碼,只是爲你排序,並在其完成排序後,看看是否有任何改變。你會使用某種類型有點像插入排序,選擇或類似的規定如何檢查一個整數數組是否被排序?
int[] arr = {4,1,3,8,9,2,7,0,5,6};
System.out.println(Arrays.toString(arr));
selectionSort(arr);
public static void selectionSort (int []arr) {
for(int i = 0; i < arr.length; i ++) {
//find the ith element
int smallest = i;
for (int j = i + 1; j <arr.length; j++) {
//find the smallest unsorted element
if(arr[j] < arr[smallest]) {
smallest = j;
所以我想我在正確的軌道上,但我不知道如何整數比較,看看是否有全部的權利訂購。
我需要添加什麼?
爲什麼要排序以確定它是否已排序?只需檢查每個元素,並確認它是> =前一個元素。 – 2012-02-10 06:42:18
如果您只想知道它們是否已排序......從頭開始並遍歷它們以查看。如果你想*他們排序......只需對它們進行排序。沒有理由在事物上添加O(n)。 – 2012-02-10 06:44:49
我只會循環查看,並檢查i + 1是否比我大。沒有理由讓它比需要的更難。除非有,你還沒有告訴我們。 – Justin 2012-02-10 06:43:37