/**
* 按顺序排序
*
* @param unsorted
*/
public void insertion_sort(int[] unsorted) {
for (int i = 1; i < unsorted.length; i++) {
// 判断数组前一个和当前的数值大小,如果当前的小 ,则再与前两个对比
if (unsorted[i - 1] > unsorted[i]) {
// 将当前的值存在temp变量里
int temp = unsorted[i];
// 把当前的位置赋值给j
int j = i;
while (j > 0 && unsorted[j - 1] > temp) {
unsorted[j] = unsorted[j - 1];// 把前一个后移
j--;
}
unsorted[j] = temp;
}
}
for (int i = 0; i < unsorted.length; i++) {
System.out.println(unsorted[i]);
}
}
|
|