西南民院计算机系
第七章 练习题 1 图的逻辑结构:图是一种多对多的结构关系,每个元素可以有零个或多个直接前趋;零个或多个直接后继; 3 数组表示法用邻接矩阵表示结点间的邻接关系 4 邻接表是图的链式存储结构 5 邻接表用顶点关联边的线性链表表示结点间的邻接关系; 9.1 概 述 本章讨论数据结构:查找表 一 查找表的概念 1 查找表:由同一类型数据元素(或记录)构成的集合。 2 查找表基本操作 构造查找表 Create(ST,n) 2 销毁查找表 Destroy(ST) 3 各种查找操作 9.1 概 述 二 查找的分类及查找的概念(了解)? 学号 姓名 专业 年龄 01 王洪 计算机 17 02 孙文 计算机 18 03 谢军 计算机 18 04 李辉 计算机 20 05 沈祥福 计算机 25 … 9.1 概 述 1 按查找条件 等值查找: 区域查找 组合查找 2 按返回结果 返回记录的位置 返回记录或记录的某些属性 3 按查找操作是否修改查找表 静态查找: 动态查找:? 9.1 概 述 三 查找表的组织方法和查找方法 静态查找表 顺序表及查找 有序表及查找动态查找表 二叉排序树 哈希表 哈希表及查找 9.1 概 述 平均查找长度(了解)? (设查找不成功的可能性很小,可忽略不计) 查找方法的平均查找长度= 在查找过程中,与给定值比较的关键字个数的数学期望值 9.2 静态查找表 1 顺序表及查找(线性表及查找) 查找表组织:将查找表中的记录按线性表的形式来组织 L1=(45,53,12,3,37,24,100,61,90,78) 顺序查找法 1)基本思想:从表的最后一个记录(或第一个记录)开始,依次将记录的关键字与给定值比较,若相等:查找成功,否则,继续查找。 9.2 静态查找表 2)说明: 优点 1)算法简单 2)对于查找表的存储结构没有特别的要求 缺点 效率不高,平均查找长度=(n+1)/2 9.2 静态查找表 有序表及查找1 有序表:查找表中的记录按关键字有序序2 二分查找法 1)基本步骤:将查找范围中间位置的记录关键字与给定值比较: < :继续在前半个表中查找 = :查找成功,返回记录位置 > :继续在后半个表中查找 1 2 3 4 5 6 7 8 9 10 L2=( 3,12,24,37,45,53,61,78,90,100 ) K=24 9.2 静态查找表 2)说明: * 效率比顺序查找高;平均查找长度=log2(n+1) * 要求查找表中的记录按关键字有序; * 查找表中的记录要用顺序表存储; 9.3 动态查找表 1? 二叉排序树 2 二叉排序树插入 3 二叉排序树的查找 45 53 100 61 90 78 12 3 37 24 9.3 动态查找表 关键字序列:45,53,12,3,100,37,24,61,90,78 45 53 100 61 90 78 12 3 37 24 9.4 哈希表 上两节介绍的查找表的查找方法 共同特点: 通过比较查找,即通过将记录关键字值与给定值比较,来进行查找。 查找算法的时间效率取决于查找过程中所进行的比较次数。 9.4 哈希表 1 哈希函数 用来定义记录的关键字与记录存储位置的对应关系的函数 2 哈希表:将记录按哈希函数或解决冲突的方法确定的位置存放,所构成的表称为哈希表 1949 1950 1951 1999 2000 2000 2100 2200 4400 4420 年份 人数 1 2 3 51 52 例 1949-2000年某地区人口统计表 哈希函数 H(KEY)=KEY-1948 9.4 哈希表 哈希函数 H(KEY)=KEY-1948 3 冲突:不同的关键字由哈希函数确定的记录的存储位置相同 4 解决冲突的方法:开放地址法,链地址法 5 哈希表的查找方法:对于给定值,由哈希函数直接定位记录的存储位置 1949 1950 1951 1999 2000 2000 2100 2200 4400 4420 年份 人数 1 2 3 51 52 第九章 练习题 1 查找表的逻辑结构:查找表中的记录除同属一个集合外,没有其他关系 2
原创力文档

文档评论(0)