版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构北京电子科技职业学院目录直接插入排序直接插入排序将无序子序列中的一个或几个记录“插入”到有序序列中,从而增加记录的有序子序列的长度。有序序列r[1..i-1]r[i]
无序序列r[i..n-1]一趟直接插入排序的基本思想:有序序列r[1..i]无序序列r[i+1..n-1]直接插入排序一趟插入排序的基本步骤将R[i]插入到R[j+1]的位置上将R[j+1…i-1]中的所有记录均后移一个位置在R[1…i-1]中查找R[i]的插入位置,满足R[1…j].key<=R[i].key<R[j+1…i-1].key;实现“一趟插入排序”分为三步直接插入排序不同的位置查找方法导致不同的算法描述:直接插入排序(基于顺序查找)折半插入排序(基于折半查找)希尔排序(基于逐趟缩小增量)直接插入排序6利用顺序查找实现在r[1..i-1]中查找r[i]的插入位置从r[i-1]起向前进行顺序查找,监视哨设置在r[0];r[0]=r[i];循环结束表明r[i]的插入位置为j+1r[0]jr[i]for(j=i-1;r[0].key<r[j].key;--j);j=i-1插入位置直接插入排序对于在查找过程中找到的那些关键字不小于r[i].key的记录,并在查找的同时实现记录向后移动;for(j=i-1;r[0].key<r[j].key;--j)
r[j+1]=r[j];上述循环结束后可以直接进行“插入”
r[j+1]=r[0];直接插入排序令i=2,实现整个序列的排序for(i=2;i<=n;i++)if(R[i].key<R[i-1].key){
在R[1…i-1]中查找R[i]的插入位置;插入R[i];}有序序列无序序列i=2i=3i=nR[n]R[3]R[2]3,…,nR[1]直接插入排序voidInsSort(RecordTyper[],intlength){inti,j;for(i=2;i<=length;i++){
r[j+1]=r[0];
/*将待插入记录插入到已排序的序列中*/}}
r[0]=r[i];
/*将待插入记录存放到监视哨r[0]中*/
j=i-1;while(r[0].key<r[j].key)
/*寻找插入位置*/
{r[j+1]=r[j];j--;}直接插入排序关键字在记
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度货物买卖合同协议模板2篇
- 《先心药本》课件
- 开题报告:中国教学论话语体系建设的百年历程与基本经验研究
- 市政道路监理大纲
- 人工挖孔抗滑桩支护施工方案
- 开题报告:学科能力导向的增值评价策略及其可视化研究
- 开题报告:新时代师范生专业素养的构成要件、发展困境及内生机制研究
- 2024届南平市重点中学高考仿真模拟数学试题试卷
- 《KUKA机器人操作》课件
- 2024年医疗器械销售协议模板版B版
- 三年级上册音乐课件-第四单元 紫竹调 |人教新课标 (共15张PPT)
- 肿瘤免疫与CART细胞治疗课件
- 妊娠期VTE的防治课件
- 作者简介:传歌者王洛宾
- 《十二生肖》 课件
- 中医内科学-肺系疾病
- 小学英语工作室个人年度总结5篇
- 煤矿信号工培训试题(有答案)
- 绘画社团精彩活动记录簿
- 安监总局公安部联合发布烟花爆竹销毁安全指南
- GB∕T 27400-2020 合格评定 服务认证技术通则
评论
0/150
提交评论