国防《数据结构》(C语言描述)教学资料包 教学课件 第8章.ppt

国防《数据结构》(C语言描述)教学资料包 教学课件 第8章.ppt

本章概述 排序是计算机程序设计中的一种重要操作,它是对数据元素序列建立某种有序排列的过程。有序的表或文件便于查找,如有序的顺序表可以采用效率较高的折半查找法,而无序的顺序表则只能采用效率较低的顺序查找法,又如建造树表本身也是一个排序的过程。所以,对各种排序方法的学习和研究,尤其是高效地排序,是计算机应用的一个重要课题。 8.1 基本概念 排序(sorting)是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列。 1.排序的定义 假设含n个记录的序列为: {R1,R2,…,Rn} (8-1) 其相应的关键字序列为: {K1,K2,…,Kn} 需确定1,2,…,n的一种排列p1,p2,…,pn,使其相应的关键字满足如下的非递减(或非递增)关系 Kp1 ≤Kp2 ≤…≤Kpn 即使(8-1)的序列成为一个按关键字有序的排列 {Rp1,Rp2 ,…,Rpn } 这样的一种操作称为排序。 2.稳定排序法与非稳定排序法 关键字:一个记录中可以标识该数据项的值。 关键字分主关键字和次关键字两种。 主关键字:数据元素值不同时该关键字的值也一定不同。 主关键字是能够唯一区分各个不同数据元素的关键字。 不满足主关键字定义的关键字称为

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档