1、插入排序算法的概念:
插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。
2、动画演示
3、插入排序流程:
①、首先比较数组的前两个数据,并排序;
②、比较第三个元素与前两个排好序的数据,并将第三个元素放入适当的位置;
③、比较第四个元素与前三个排好序的数据,并将第四个元素放入适当的位置;
…
⑤、直至把最后一个元素放入适当的位置。
4、代码实现:
import java.util.Arrays;
public class InsetSelection {
public static void main(String[] args) {
int[] array = {5,6,2,7,3};
int i,j,temp;
for(i = 1 ;i < array.length;i++) {
temp = array[i];
for(j = i-1;j>=0;j--) {
if(temp>=array[j]) {
break;
}
else {
array[j+1] = array[j];
}
}
array[j+1] = temp;
}
System.out.println(Arrays.toString(array));
}
}
5、输出:
[2, 3, 5, 6, 7]