插入排序
将数组分为两个部分,一部分是有序的(已排序),一部分是无序的(未排序),插入排序就是将无序的数字依次插入到有序的数组中,最后达到排序的效果。
举个例子:1 8 5 2 9
第一次从下标为1的开始 然后和他前面的数比较 (我是从按降序排的)8>1 所以交换他俩 变成
8 1 5 2 9
第二次从下标为2的开始 依次比较他前面的数 5>1 交换 变成
8 5 1 2 9
依次比较他前面的 5!>8 所以不交换
这里就不在累述了...
public class example01 {
public static void main(String[] args) {
int[] a ={900,878,891,904,865,912,868,870,898,903};
//插入排序算法
for(int i=1;i<a.length;i++)
{
for(int j=i;j>0;j--) {
if(a[i]<a[j--])
{
int temp;
temp=a[i];
a[i]=a[j--];
a[j--]=temp;
}
}
//输出
System.out.print("第"+i+"次排序:");
for(int b:a)
System.out.print(" "+b);
System.out.println();
}
}
}
4541

被折叠的 条评论
为什么被折叠?



