首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >9.2 静态查找表

9.2 静态查找表

原创
作者头像
小林C语言
修改于 2020-12-14 07:08:23
修改于 2020-12-14 07:08:23
7850
举报

01顺序表的查找

1、顺序查找(Sequential Search)的查找过程为:从表中最后一个记录开始,逐个进行记录的关键字和给定值的比较,若某个记录的关键字和给定值比较相等,则查找成功,找到所查记录。

2、反之若直至第一个记录,其关键字和给定值比较都不等,则表明表中没有所查记录,查找不成功。

3、衡量一个算法的好坏的量度有3条:时间复杂度、空间复杂度和算法的其他性能。

4、对于查找算法来说,通常只需要一个或几个辅助空间。

5、为确定记录在查找表中的位置,需和给定值进行比较的关键字个数的期望值称为查找算法在查找成功时的平均查找长度。

6、顺序查找的缺点是平均查找长度较大,查找效率较低。然而,它有很大的优点是:算法简单且适应面广。

02有序表的查找

1、以有序表表示静态查找表时,Search函数可用折半查找来实现。

2、折半查找(Binary Search)的查找过程是:先确定待查记录所在的范围(区间),然后逐步缩小范围直到找到或找不到该记录为止。

03 静态树表的查找

1、称PH值取最小的二叉树为静态最优查找树(Static Optimal Search Tree)。

2、构造一棵二叉树,使这棵二叉树的带权内路径长度PH值在所有具有同样权值的二叉树中近似为最小,称这类二叉树为次优查找树。

04索引顺序表的查找 

1、若以索引顺序表表示静态查找表,则Search函数可用分块查找来实现。

2、分块查找又称索引顺序查找,这是顺序查找的一种改进方法。

C语言 | 心形表白神器

更多案例可以go公众号:C语言入门到精通

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
PHP数据结构(十二) ——静态查找表​
PHP数据结构(十二)——静态查找表 (原创内容,转载请注明来源,谢谢) 一、概念 1、查找表:由同一类型数据元素构成的集合。 2、静态查找表:只进行查找(包括确认元素是否存在、查找元素的值),不进行增加和删除操作。 3、动态查找表:与静态查找表相对应,除了查找,还会进行插入与删除操作。 4、关键字:用于标识一个数据元素,如果对应的数据元素唯一,则为主关键字。如果若干个关键字可以唯一确定一个数据元素,称这些关键字为次关键字。
用户1327360
2018/03/07
1.3K0
我的软考之路(七)——数据结构与算法(5)之查找
上篇博文我重点介绍了八大内部排序,这篇博文(数据结构与算法的最后一课)重点介绍查找,我们依旧沿用上篇博文的风格,先简单介绍,再以例子重点讲解。
程序猿小亮
2021/01/28
4750
软件设计(十二)数据结构(下)
顺序查找 成功的平均查找长度为 (n+1)/2,也就是说查找的平均次数约为表长的一半,优点就是算法简单适应面广,对查找的表结构没什么要求,缺点就是查找长度太长效率低下。
keying
2023/02/28
3300
软件设计(十二)数据结构(下)
算法(一)
查找表(Search Table): 是由同一类型的数据元素构成的集合。 关键字(Key): 是数据元素中某个数据项的值,又称为键值。 若此关键字可以唯一地标识某一记录,则称此关键字为主关键字(Primary Key)。
1ess
2021/11/01
3870
查找一 线性表的查找
静默虚空
2018/01/05
1.3K0
查找一 线性表的查找
【自考】数据结构第六章查找,期末不挂科指南,第10篇
查找表 是由同一类型的数据元素 构成的集合,它是一种以查找为“核心”,同时包括其他运算的非常灵活的数据结构。
梦想橡皮擦
2020/01/13
7150
【自考】数据结构第六章查找,期末不挂科指南,第10篇
从淘宝推荐到微信搜索:查找算法如何支撑亿级用户——动画可视化
盛透侧视攻城狮
2025/08/13
1660
从淘宝推荐到微信搜索:查找算法如何支撑亿级用户——动画可视化
数据结构 第七章 查找
列表:由同一类型的数据元素组成的集合。 关键码:数据元素中的某个数据项,可以标识列表中的一个或一组数据元素。 键值:关键码的值。 主关键码:可以唯一地标识一个记录的关键码。 次关键码:不能唯一地标识一个记录的关键码。
Twcat_tree
2022/11/29
5360
数据结构 第七章 查找
查找算法之折半查找+分块查找
基本概念 查找表:由同一种类型的数据元素(记录)组成 静态查找表:只需要查找算法 动态查找表:除了查找,还需要增删改查数据元素 关键字:唯一标识数据元素的数据项 常见的查找算法 折半查找 概念 折半查找又称二分查找,仅适用于有序的顺序表,不能用链表。 算法 //查找算法 int binary_search(seqlist L,Elemtype key) { int low,high=L.TableLen-1,mid; while(low<=high) { mid=(low<=high)/2; if(L.el
跋扈洋
2021/09/03
1.9K0
数据结构 静态树表查找算法
然而在某些情况下,查找表中的个关键字被查找的概率都是不同的。例如在UI设计师设计图片的时候,不同的设计师和不同的项目经理需求不同,有些项目经理喜欢暖色调,那么暖色调就会应用的多一些,有的项目经理比较喜欢冷色调,之后你的设计采用冷色调的概率也是比较大的。
Meng小羽
2019/12/23
9530
查找 -数据结构
从表的一端开始,向另一端逐个按给定值kx 与关键码进行比较,若找到,查找成功,并给出数据元素在表中的位置;若整个表检测完,仍未找到与kx 相同的关键码,则查找失败,给出失败信息。
黄规速
2022/04/14
5120
查找 -数据结构
C/C++语言的查找算法(上)
算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。
C语言与CPP编程
2020/12/02
9430
《大话数据结构》 查找 以及一个简单的哈希表例子
第八章 查找 定义:查找就是根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录)。 8.2 查找概论 查找表(Search table):是由同一类型的数据元素构成的集合。 关键字(key):是数据元素中某个数据项的值,又称为键值。 若此关键字可以唯一的标识一个记录,则称此关键字为主关键字(Primary key)。 对于那些可以识别多个数据元素的关键字,我们称为次关键字(Secondary key)。 查找表按照操作方式来分有两大种:静态查找表和动态查找表 静态查找表(Static
xcywt
2018/03/28
2.5K0
《大话数据结构》 查找 以及一个简单的哈希表例子
重学数据结构(八、查找)
顺序查找的基本思想:从表的一端开始,顺序扫描线性表,依次扫描到的结点关键字和给定的K值相比较,若当前扫描到的结点关键字与 K相等,则查找成功;若扫描结束后,仍未找到关键字等于 K的结点,则查找失败。
三分恶
2020/12/16
9670
重学数据结构(八、查找)
数据结构与算法(二):查找算法
查找定义:根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录)
Helloted
2022/06/06
5370
查找——线性表
查找概率不等时,如果从前向后查找,则按查找概率由大到小排列的有序表其ASL要比无序表ASL小
ruochen
2021/06/29
6560
查找——线性表
C/C++语言的查找算法(下)
斐波那契查找与折半查找很相似,他是根据斐波那契序列的特点对有序表进行分割的。他要求开始表中记录的个数为某个斐波那契数小1,即n=F(k)-1;
C语言与CPP编程
2020/12/02
6440
C/C++语言的查找算法(下)
Python 查找算法_众里寻他千百度,蓦然回首那人却在灯火阑珊处(线性、二分,分块、插值查找算法)
查找算法是用来检索序列数据(群体)中是否存在给定的数据(关键字),常用查找算法有:
一枚大果壳
2022/08/23
4970
Python 查找算法_众里寻他千百度,蓦然回首那人却在灯火阑珊处(线性、二分,分块、插值查找算法)
数据结构与算法 - 查找
目录 一、查找的定义 二、线性表的查找    2.1 、顺序查找    2.2、二分查找    2.3、分块查找 三、树表查找    3.1 、二叉排序树    3.2 、平衡二叉树 一、查找的定义 查找 又称检索,是数据处理中经常使用的一种重要运算。采用何种查找方法,首先取决于使用哪种数据结构来表示“表”,及表中的数据元素按何种方式组织。     查找有内查找和外查找之分。若整个查找过程都在内存进行,则称为内查找;反之,若查找过程需要访问外存,则称为外查找。
且行且珍惜_iOS
2018/12/28
7230
数据结构基础温故-6.查找(上):基本查找与树表查找
只要你打开电脑,就会涉及到查找技术。如炒股软件中查股票信息、硬盘文件中找照片、在光盘中搜DVD,甚至玩游戏时在内存中查找攻击力、魅力值等数据修改用来作弊等,都要涉及到查找。当然,在互联网上查找信息就更加是家常便饭。查找是计算机应用中最常用的操作之一,也是许多程序中最耗时的一部分,查找方法的优劣对于系统的运行效率影响极大。因此,本篇讨论一些查找方法。
Edison Zhou
2018/08/20
8650
数据结构基础温故-6.查找(上):基本查找与树表查找
相关推荐
PHP数据结构(十二) ——静态查找表​
更多 >
领券
一站式MCP教程库,解锁AI应用新玩法
涵盖代码开发、场景应用、自动测试全流程,助你从零构建专属AI助手
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档