第9章查找 静态查找表 二叉排序树 平衡二叉树(AVL树) 小结 B树 哈希表
静态查找表 查找 Search)的概念 查找:就是在数据集合中寻找满足某种条 件的数据对象。 查找表:是由同一类型的数据元素(或记录) 组成的数据集合。 查找的结果通常有两种可能: ◆查找成功,即找到满足条件的数据对象 ◆查找不成功,或查找失败。作为结果, 报告一些信息,如失败标志、失败位置等
n关键字:数据元素中某个数据项的值,用以 标识一个数据元素。 主关键字:可唯一地标识一个数据元素的关 键字。 n次关键字:用以识别若干记录的关键字。 n使用基于主关键字的查找,杳找结果应是 唯一的 静态查找表(p214) n动态查找表
91静态查找表 基本操作: Create(&STn);∥构造含有n个元素的静态查找表ST Destroy(&ST);∥销毁表 Search( ST, key),∥查找关键字为key的数据元素 Traverse(ST; visitO),遍历查找表
基本操作: Create(&ST,n); //构造含有n个元素的静态查找表ST Destroy(&ST); //销毁表 Search(ST,key); //查找关键字为key的数据元素 Traverse(ST,visit()); //遍历查找表
衡量一个查找算法的时间效率的标准是:在查 找过程中关键字的平均比较次数或平均读写磁 盘次数(只适合于外部查找),这个标准也称为 平均查找长度ASL( verage search length),通 常它是查找结构中对象总数n或文件结构中物 理块总数n的函数。 另外衡量一个查找算法还要考虑算法所需要的 存储量和算法的复杂性等问题。 在静态查找表中,数据对象存放于数组中,利 用数组元素的下标作为数据对象的存放地址。 查找算法根据给定值x,在数组中进行查找。 直到找到x在数组中的存放位置或可确定在数 组中找不到x为止