知识大全 查找 - 查找的基本概念
Posted 结点
篇首语:等不到的晚安就别等了,挤不进的世界就别挤了。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 查找 - 查找的基本概念相关的知识,希望对你有一定的参考价值。
本章简介
由于查找运算的使用频率很高 几乎在任何一个计算机系统软件和应用软件中都会涉及到 所以当问题所涉及的数据量相当大时
查找方法的效率就显得格外重要 在一些实时查询系统中尤其如此 因此 本章将系统地讨论各种查找方法 并通过对它们的效率
分析来比较各种查找方法的优劣
查找的基本概念
查找表和查找
一般 假定被查找的对象是由一组结点组成的表(Table)或文件 而每个结点则由若干个数据项组成 并假设每个结点都有一个
能惟一标识该结点的关键字
查找(Searching)的定义是 给定一个值K 在含有n个结点的表中找出关键字等于给定值K的结点 若找到 则查找成功 返回该
结点的信息或该结点在表中的位置;否则查找失败 返回相关的指示信息
查找表的数据结构表示
( )动态查找表和静态查找表
若在查找的同时对表做修改操作(如插入和删除) 则相应的表称之为动态查找表 否则称之为静态查找表
( )内查找和外查找
和排序类似 查找也有内查找和外查找之分 若整个查找过程都在内存进行 则称之为内查找;反之 若查找过程中需要访问外
存 则称之为外查找
平均查找长度ASL
查找运算的主要操作是关键字的比较 所以通常把查找过程中对关键字需要执行的 平均比较次数(也称为平均查找长度)作为衡量
一个查找算法效率优劣的标准
平均查找长度 ASL(Average Search Length)定义为
>
其中
①n是结点的个数;
②P i 是查找第i个结点的概率 若不特别声明 认为每个结点的查找概率相等 即
p l =p …=p n = /n
③c i 是找到第i个结点所需进行的比较次数
注意
为了简单起见 假定表中关键字的类型为整数
typedef int KeyType; //KeyType应由用户定义
cha138/Article/program/sjjg/201311/23606相关参考
散列方法不同于顺序查找二分查找二叉排序树及B树上的查找它不以关键字的比较为基本操作采用直接寻址技术在理想情况下无须任何比较就可以找到待查关键字查找的期望时间为O() 散列表的概念 散列表 设
查找 在给定的数据集合中查找某个关键值就是查找查找的基本方法主要有顺序查找法折半查找法B树散列(Hash)表及其查找考的比较多的是折半查找和散列表我们要掌握它们的基本概念和方法例如散列表的碰撞如
本章介绍了线性表树和散列表的查找方法算法实现以及各种查找方法的时间性能分析重点是顺序查找二分查找二叉树查找以及散列表上查找的基本思想和算法实现 一基本概念(识记) 查找的同时对表做修改操作(如
第八章查找表 本章介绍了基本的查找技术和索引技术特别介绍了动态查找表的存储结构以及对查找表进行的基本操作对哈希表查找也作了详细的描述考核知识点 基本概念:查找静态查找动态查找关键码次关键码查找成功
顺序查找(SequentialSearch) 在表的组织方式中线性表是最简单的一种顺序查找是一种最简单的查找方法 顺序查找的基本思想 基本思想是从表的一端开始顺序扫描线性表依次将扫描到的结点
文件的逻辑结构及操作 文件的逻辑结构 文件可看成是以记录为数据元素的一种线性结构 文件上的操作主要有两类检索和维护 ()检索 检索即在文件中查找满足给定条件的记录它既可以按记录的逻辑号(
分块查找(BlockingSearch)又称为索引顺序查找其性能介顺序查找和二分查找之间 分块查找的基本思想分块查找要求把顺序表分成若干块每一块中的键值存储顺序是任意的但要求分块有序即前一块中的
线性表上进行查找的方法主要有三种顺序查找二分查找和分块查找 顺序查找(SequentialSearch)算法基本思想是从表的一端开始顺序扫描线性表依次将扫描到的结点关键字与给定值K相比较若当前扫
二分查找又称为折半查找(BinarySearch)它要求线性表中结点必须按关键字值递增或递减顺序排列 二分查找的基本思想首先用要查找的关键
B树的基本操作 #defineM typedefstructBTNode intkeynum; structBTNode*parent; KeyTyp