20130312课件:顺序表的排序和查找.pptVIP

  • 7
  • 0
  • 约4.71千字
  • 约 35页
  • 2017-12-31 发布于河南
  • 举报
20130312课件:顺序表的排序和查找

* * * * * * * 顺序表的存储结构 顺序表中数据的存储结构可描述如下: #define MAXSIZE 100 typedef struct node { int key;  /* 关键字域 */ …… /* 其它域 */ } Elemtype ;  typedef struct sequence { Elemtype r[MAXSIZE] ; /* 数组域 */ int len ; /* 表长域 */  } Seq; Seq list; 类型定义 变量定义 有序顺序表中折半查找的实现 流程图 本次课总结 顺序线性表的查找 与查找有关的基本概念 顺序线性表中查找的实现 顺序线性表的排序 与排序有关的基本概念 冒泡排序 简单选择排序 有序顺序线性表的查找 有序顺序线性表中查找的实现—折半查找 * 排序和查找作业 根据课件中的结构体定义和算法流程图,实现以下三个排序和查找算法: (1)冒泡排序; (2)简单选择排序; (3)折半查找; 并构造例子进行测试。 * * * * * * * * * * * * * * * * * * * * * * * * * * * 《C语言与数据结构》 第6次课-----循环结构 顺序表的排序和查找 《C++程序设计》(下) 教学主题 顺序线性表的排序和查找 教学目标 通过本次课的学习,使学生掌握排序的基本概念,顺序存储结构线性表的排序方法,以及在排序基础上顺序线性表的查找。 教学重点 1、冒泡排序和选择排序的基本思想 2、冒泡排序和选择排序的算法实现 3、顺序查找和折半查找的实现 教学难点 排序和折半查找算法的实现 教案 主要内容 顺序线性表的查找 与查找有关的基本概念 顺序线性表中查找的实现 顺序线性表的排序 与排序有关的基本概念 冒泡排序 简单选择排序 有序顺序线性表的查找 有序顺序线性表中查找的实现—折半查找 与查找有关的基本概念 列表(list):由同一类型 的数据元素(或记录)构成的集合。 关键字:数据元素的某个数据项,用它可以标识列表中的一个或一组数据元素。 如果一个关键字可以唯一标识列表中的一个数据元素,则称其为主关键字,否则为次关键字。当数据元素仅有一个数据项时,数据元素的值就是关键字。 查找:根据给定的关键字值,在列表中寻找与给定关键字值相同的数据元素,并返回该数据元素在列表中的位置。 查找的结果:有两种,查找成功和查找失败。 查找时涉及到的三类参量: ① 查找对象K(找什么); ② 查找范围L(在哪找); ③ K在L中的位置(查找的结果)。 输出参量 输入参量 查找举例 在学生成绩管理系统中,假设全部学生的成绩可以如下表所示存储在计算机中,表中每一行为一个记录,学生的学号为记录的主关键字。 若给定值为0223801,则可找到学生王丽,查找是成功的。 若给定值为0223912,由于表中没有关键字为0223912的记录,则查找不成功。 查找的方法 查找的方法很多。对于不同结构的查找表,需要采用不同的查找方法。 就大的方向来分,查找方法可以分为静态查找表和动态查找表。 顺序表可采取的查找方法:顺序查找法,即:从顺序表的一端开始,用给定值k逐个顺序地与表中各记录的关键字比较,直到在表中找到某个记录的关键字与k值相等,表明查找成功;否则,若查遍了表中的所有记录却仍未找到与k值相等的关链字,表明查找失败。 查找后,不影响表中的数据 查找后,表中数据会改变 顺序表的存储结构 顺序表中数据的存储结构可描述如下: #define MAXSIZE 100 typedef struct node { int key;  /* 关键字域 */ …… /* 其它域 */ } Elemtype ;  typedef struct sequence { Elemtype r[MAXSIZE] ; /* 数组域 */ int len ; /* 表长域 */  } Seq; Seq list; 类型定义 变量定义 顺序表中顺序查找的实现 流程图 顺序表中顺序查找算法的改进 如果允许在表的最后增设一个虚拟记录(要查找的关键字值放入其中,只要不引起数组r的下标溢出

文档评论(0)

1亿VIP精品文档

相关文档