设关键码分别为k1, k2, …, km,多键排序有两种方法: ⑴ 依次对记录进行m次排序,第一次按k1排序,第二次按k2排序,依此类推。这种方法要求各趟排序所用的算法是稳定的; ⑵ 将关键码k1, k2, …, km分别视为字符串依次首尾连接在一起,形成一个新的字符串,然后,对记录序列按新形成的字符串排序。 排序的分类 1. 基于比较:基本操作——关键码的比较和记录的移动,其最差时间下限已经被证明为Ω(nlog2n)。 2. 不基于比较:根据关键码的分布特征。 直接插入排序过程示例 希尔插入排序过程示例 起泡排序过程示例 算法描述: index=i; for (j=i+1; j=n; j++) if (r[j]r[index]) index=j; 解决方法: 设置一个整型变量index,用于记录在一趟比较的过程中关键码最小的记录位置。 关键问题⑴:如何在无序区中选出关键码最小的记录? 解决方法: 第i趟简单选择排序的待排序区间是r[i] ~ r[n],则r[i]是无序区第一个记录,所以,将index所记载的关键码最小的记录与r[i]交换。 选择排序 关键问题⑵:如何确定最小记录的最终位置? 算法描述: if (index!=i) r[i]←→r[index]; void selectSort ( int
您可能关注的文档
- 电力事故课稿.ppt
- 电力通信管理实施细则课稿.ppt
- 电力拖动第1章课稿.ppt
- 第8章卤代烃研究.ppt
- 电力拖动第一章课稿.ppt
- 第一章农业微生物研究.ppt
- 电力拖动自动控制系统(直流部分)陈伯时版课件2课稿.ppt
- 电力拖动自动控制系统1课稿.ppt
- 电力网络元件参数和等值电路课稿.ppt
- 第3章习题研究.doc
- 施工废水固液分离施工工法.docx
- 施工废水固液分离循环利用施工工法.docx
- 基础设施建设管理实践案例.docx
- 基于物联网的智慧农场数据感知与决策支持系统设计.docx
- 2026河北交投怡亚通供应链服务有限公司社会招聘2人备考题库(含答案详解).docx
- 2026河北保定定州市育龙双语学校初中部招聘30人备考题库及1套完整答案详解.docx
- 湿陷性黄土地区建筑复合地基水泥土褥垫层施工工法.docx
- 公共卫生体系建设与健康促进策略.docx
- 2026河北保定定州市育龙双语学校初中部招聘30人备考题库及1套参考答案详解.docx
- 2026河北保定定州市育龙双语学校初中部招聘30人备考题库参考答案详解.docx
原创力文档

文档评论(0)