算法之插入排序算法
来源:互联网 发布:我们都是超能力者 知乎 编辑:程序博客网 时间:2024/06/06 06:52
1.默认第一个数已经为已排序
2.取第二个数为新元素将它插入已排序队列的合适位置
2.1新元素如果比上1个数(已排序的最后1个数)大则将上1个数向后移一位如果小则到第2.3步
2.2新元素如果比上N个数(已排序的最后N个数)大则上N个数向后移一位如果小则到第2.3步
2.3将新元素插入上N个数位置之前的一个位置
3将第三个数N个数为新元素将它插入已排序队列的合适位置
具体代码:
public void zjinsert (Redtype r[],int n)
{
int I,j;
Redtype temp;
for (i=1;i<n;i++) //i初始化为1默认第一个数已经排序
{
temp = r[i]; // temp为新元素也就是第二个数
j=i-1;
while (j>-1 &&temp.key<r[j].key) //将新元素与上一个数比较
{
r[j+1]=r[j]; //小则把上一个数向后移一位
j--;
}
r[j+1]=temp;
}
}
代码摘自百度百科,自己加上了理解注释
0 0
- 排序算法之插入算法
- 算法之插入排序算法
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之----插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- 算法之插入排序
- Intllij IDE 注册码生成
- ListFragment的用法
- Android之——获取手机安装的应用程序
- linux下解压命令大全
- d
- 算法之插入排序算法
- div靠底边对齐
- struts2.0的实现
- 结合jenkins, 使用maven-assembly-plugin实现静态资源自动化部署,maven打zip包
- css中的content: "." 有什么用?为什么要用他?
- 数据存储之内部存储
- HDU5317
- 随堂演练
- 写字板