插入排序
来源:互联网 发布:linux 列出网卡ip 编辑:程序博客网 时间:2024/06/06 02:03
一.定义理解
即将一个数插入到前面已经排好的有序数列中,得到的数列仍有序。
二.算法描述(从大到小排序)
1.自认为第一个元素是有序的
2.拿出下一个元素,从该元素前面的有序数列的最后一个元素开始从后往前扫面
3.如果该元素(拿出的元素)大于新元素(扫描到已排序数列中的某元素),新元素后移一个位置
4.重复步骤3,知道该元素小于新元素,终止该元素的向前扫描
5.将该元素插入到插入到下一个位置
6.重复步骤2,3,4,5
三.有趣视频——助理解
http://www.tudou.com/programs/view/yMvjfuBfEbg/
四:举例(3,6,5,8,7排序)
四.vb代码展示
<span style="font-style: normal;"> <span style="font-family:SimSun;font-size:18px;">For i = 2 To n '进行扫描的次数 If a(i) > a(i - 1) Then tmp = a(i) '保存大值 For j = i - 1 To 1 Step -1 '从后往前坐比较 If tmp < a(j) Then Exit For '排序时遇到比前一个数小时,终止次轮比较 a(j + 1) = a(j) '小值后退一个位置 Next j a(j + 1) = tmp '退出for循环时,把tmp赋给a(j+1),否则会出现重复 End If Next i</span></span>五.有关算法连接
选择排序:http://m18713008480.blog.163.com/blog/static/253452025201642242841585/
冒泡排序:http://m18713008480.blog.163.com/blog/static/253452025201651172627678/
1 0
- 插入排序-【插入排序】
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- javascript 引用类型 - Array类型
- Ruby gem: Mac 系统下的安装与更新
- 安卓学习笔记---解决在在Edittext输入的时候,输入框被软键盘遮挡部分内容的问题(一)
- 打开系统的设置页面
- matlab的函数conv()的C语言实现
- 插入排序
- Java内存溢出详解
- 【CodeForces】[659A]New Year and Days
- fitnesse使用
- scsi设备扫描特征分析
- 关于iOS通知(APNS)的理解
- 监听Activity的生命周期
- Python:10054错误
- webstorm添加电脑上其他盘里面 的文件