java数据结构之插入排序
插入排序就是把当前待排序的元素插入到一个已经排好序的列表里面。一个非常形象的例子就是右手抓取一张扑克牌,并把它插入左手拿着的排好序的扑克里面。
插入排序的最坏运行时间是O(n2),所以并不是最优的排序算法。
如果输入数组已经是排好序的话,插入排序出现最佳情况,其运行时间是输入规模的一个线性函数。
如果输入数组是逆序排列的,将出现最坏情况。平均情况与最坏情况一样,其时间代价是Θ(n2)。
简单例子:
publicclassDemo6{
publicstaticvoidmain(String[]args){
//定义一个整型数组
int[]nums=newint[]{4,3,-1,9,2,1,8,0,6};
//打印没有进行排序的数组
System.out.println("没有排序之前的结果:"+Arrays.toString(nums));
for(intindex=0;index0&&nums[position-1]>key){
nums[position]=nums[position-1];
position--;
}
nums[position]=key;
}
//打印排序后的结果
System.out.println("排序后的结果:"+Arrays.toString(nums));
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短