插入排序(insertion sort):在每次迭代过程中算法随机地从输入序列中移除一个元素,并将该元素插入待排序序列的正确的位置,重复该过程,直到所有输入元素都被选择过一次。
算法图解:
代码如下:
public class Main {
public static void main(String[] args){
int temp[]={3,1,5,2,4,0};
sort(temp);
}
public static void sort(int a[]) {
int i,j,k;
for(i=1;i<a.length;i++)
{
j=i;
k=a[i];
while(j>=1&&a[j-1]>k)
{
a[j]=a[j-1];
j--;
}
a[j]=k;
}
for (int data : a)
{
System.out.print(" "+data);
}
}
}
输出的结果为: