插入排序:
插入排序就是每一步將乙個待排資料按其大小插入到已經排序的資料中的適當位置,直到全部插入完畢。插入效果如圖:
**實現如下
這裡包含了測試**和隨機數組生成等方法,方便測試用了。。。// 插入排序
public static void insertionsort(int arr)
for (int i = 1; i < arr.length; i++) }}
// 交換
public static void swap(int arr,int i,int j)
// 比較器
public static void comparator(int arr)
// 產生陣列
public static int generaterandomarray(int maxsize,int maxvalue)
return arr;
}// 複製陣列
public static int copyarray(int arr)
int res = new int[arr.length];
for (int i = 0; i < arr.length; i++)
return res;
}// 測試陣列是否相等
public static boolean isequal(int arr1,int arr2)
if(arr1==null && arr2 == null)
if(arr1.length != arr2.length)
for (int i = 0; i < arr1.length; i++)
}return true;
}// 輸出陣列
public static void printarray(int arr)
for (int i = 0; i < arr.length; i++)
system.out.println();
}// 正式測試插入排序是否有效
public static void main(string args)
}system.out.println(succeed ? "nice !" : "oh my dog");
int arr = generaterandomarray(maxsize,maxvalue);
printarray(arr);
insertionsort(arr);
printarray(arr);
}
插入排序(Java)
演算法思想 每趟將乙個待排序的關鍵字,按照其關鍵字值的大小插入到已經排好的部分序列的適當位置上,直到插入完成。演算法 static void insertion sort int unsorted unsorted j temp public static void main string arg ...
java插入排序
簡單的講就是把乙個數字放在一串已經排好順序的陣列中,放進去後還要使得陣列排序完整。那麼,就是1找位置,2填數字。這就是我的思路。下面是插入排序的類 package algorithm public class insertion sort return key public void display...
插入排序 java
插入排序是一種簡單且高效的比較排序演算法。在每次迭代過程中演算法隨機的從輸入序列中移出乙個元素,並將該元素插入待排序列的正確位置。重複該過程,知道所有的輸入元素都被選擇一次。優點 實現簡單。資料量較少時效率高。適應性 如果輸入序列已經與排序 可能是不完全的預排序 則時間複雜度為o n d d是反轉的...