版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
插入排序算法
排序算法设计插入排序算法算法原理训练项目程序设计算法评估教学目标教学目标掌握插入排序算法原理熟练控制类模板函数的返回值掌握利用for与while循环语句以多种方法编写插入排序函数的方法掌握根据实际需要对算法函数程序进行控制的方法插入排序算法教学目标训练项目程序设计算法评估算法原理
与选择排序算法不同,插入排序(InsertionSorting)是从无序部分不经选择,任取一元,然后插入到有序部分的正确位置。
关键在于我们能否改变循环结构并实现算法。该算法步骤如下:将L[1…n]分为两部分:L[1..i]为已排序部分,L[i+1…n]为未排序部分。(1)i=1
(2)把L[i+1…n]插入到L[1..i]中的正确位置,i++
(3)if(i<n)goto(2)(4)结束插入排序算法教学目标训练项目程序设计算法评估算法原理
程序分析:template<classType>TypeInsertSort(Types[],intn){ Typetemp;for(inti=1;i<=n-1;i++){ for(intj=i-1,temp=s[i];j>=0;j--){ if(s[j]>temp)s[j+1]=s[j]; else{s[j+1]=temp;break;k=0;} } } return*s;}
插入排序算法教学目标算法原理训练项目程序设计算法评估训练项目:
请同学们修正上述程序的错误,并进行完整的编程实践。插入排序算法教学目标算法概念动画演示程序设计算法评估设待排序数组为s[]其中,第i个元素为s[i]
第j个元素为s[j]fori=1,k=1J=i-1非零J>=0s[J+1]=s[J]非零零零v=s[i]i<=n-1s[J+1]=v;break;k=0;i++forJ=i-1s[J]>vJ--K==1s[J+1]=v零零非零非零插入排序算法教学目标算法概念动画演示程序设计算法评估了解插入排序算法函数template<classType>TypeInsertSort(Types[],intn){ Typetemp;intk;for(inti=1;i<=n-1;i++){ k=1;for(intj=i-1,temp=s[i];j>=0;j--){ if(s[j]>temp)s[j+1]=s[j]; else{s[j+1]=temp;break;k=0;} } if(k==1)s[j+1]=temp;} return*s;}
插入排序算法教学目标算法概念动画演示程序设计算法评估
编程实操请同学们,根据插入排序算法函数的原理,并增加输入输出功能,编写完成的算法程序。
插入排序算法教学目标算法概念动画演示程序设计算法评估插入排序算法与选择排序算法都有两重循环,但却有一个重要的差别,就是在选择排序算法中,内层循环次数是确定的,而在插入排序算法中,内层循环次数是不确定的,因此,其最坏情形和平均情形的时间复杂度是不同的。显然,插入排序最坏情形出现在内层循环中,变量j的值都是从i-1变到0。例如,当L[1…n]的元素值不同且恰为降序排列时,最坏情形出现,
W(n)=插入排序的最好情形,显然是内层循环每次只进行一次比较。例如当L[1…n]的元素值本身就是按升序排列时,B(n)=n-1插入排序算法教学目标算法概念问题长度程序设计算法评估
作业1请使用两种不同的插入排序算法程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年船舶改装设计及建造合同3篇
- 保安监控系统招投标文件目录
- 糖果店店员岗位协议
- 隧道工程机械租赁合同
- 医疗紧急事件应对策略
- 2025年度KTV联盟商家品牌合作推广与权益交换协议3篇
- 医疗器械招投标文件封条格式
- 航空航天场地暖施工合同模板
- 2024年防腐刷漆项目承包合同3篇
- 私募基金高管聘用合同注意事项
- ISO IEC20000-2018信息技术服务管理体系程序文件
- 废气治理设施运行管理规程
- 出租厂房建筑和设施安全检查表
- 项目验收交接单(运维部)
- 园林绿化养护组织实施方案实施计划书
- 关于父子关系证明
- 管理线性规划入门形考答案
- 个人劳动仲裁委托书(5篇)
- GB∕T 18387-2017 电动车辆的电磁场发射强度的限值和测量方法
- (完整版)混凝土公司组织机构框图
- 布袋除尘器培训资料
评论
0/150
提交评论