public class InsertSort{
public static void main(String[] args) {
int[] array = {34,8,64,51,32,21};
int[] a = insertionSort(array);
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
public static int[] insertionSort(int[] array){
for (int i = 1; i < array.length; i++) {
int tmp = array[i];
for (int j = i; j>0 && tmp <array[j-1];j--){
array[j] = array[j-1];
array[j-1] = tmp;
}
}
return array;
}
}
当前元素tmp之前是已经排好序,那么将当前元素和前面元素一个一个地去比较,如果但钱元素更小,说明该元素应该放到前面,也就是说需要交换这两个元素的位置。然后循环执行,直到tmp元素的值比前面的元素要大。这时候,前面的元素就是有序的了。
output:
8
21
32
34
51
64
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。