- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
查找是为了得到某个信息而进行的工作。在非数值运算问题中,数据存储量一般很大,为了在大量信息中找到某些值,就需要用到查找技术,而为了提高查找效率,就需要对一些数据进行排序。在本项目中,通过1个工作任务,向读者展示数据库(C语言)中的查找功能。
使用哈希法输出最大值
使
用
哈
希
法
输
出
最
大
值
使用哈希法输出最大值
查找的基本概念
顺序查找
二分查找
分块查找
二叉排序树
平衡二叉排序树
B树和B+树
哈希表的概述
哈希函数的构造方法
处理冲突的方法
哈希表的实现
哈希表的查找分析
1.
查
找
的
基
本
概
念
查找(search)又称为检索,是计算机软件开发中经常使用的一种重要操作之一。查找的方法有很多种,查找的目的就是从确定的数据结构中找出某个特定的记录。当数据量很大时,分析各种查找算法的效率就显得十分重要。在程序设计中,查找是对数据结构中的记录(和排序一样,在查找中把数据元素称为记录)进行处理时经常采用的一种操作。查找在许多程序中耗时最多,因此,一个好的查找方法会大大提高程序的运行速度。
2.
顺
序
查
找
顺序查找(Sequential search)也称线性查找,是一种最简单也是最常用的查找技术。顺序查找时,将每个结点的关键字和待查的关键字值进行比较,直到找出相等的结点或者找遍了表中所有结点,也没有相等的结点,前者称为查找成功,后者称为查找失败。执行顺序查找算法时,被查找的线性表可以是顺序存储的,也可以是链式存储的,对结点没有排序要求,因而顺序查找具有良好的适应性。
3.
二
分
查
找
二分查找(Binary Search)也称折半查找,它是一种效率较高的查找方法。二分查找对待查的线性表有两个要求:第一,必须采取顺序存储结构;第二,必须是按关键字大小排序的有序表。这里假设查找表按升序排列。
4.
分
块
查
找
分块查找的基本思想:根据给定的k值,先在索引表中进行顺序查找或二分查找以确定待查记录在哪一块中,然后在已确定的块中再进行顺序查找。
5.
二
叉
排
序
树
二叉排序树又称为二叉查找树(Binary Search Tree),它定义为或者是一棵空树,或者是具有下列性质的二叉树:
(1)若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;
(2)若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;
(3)它的左、右子树也分别为二叉排序树。
6.
平
衡
二
叉
排
序
树
平衡二叉搜索树(Balanced Binary Tree)是一种结构平衡的二叉搜索树,即叶节点深度差不超过1,它能在O(log n)内完成插入、查找和删除操作。常见的平衡二叉搜索树包括:AVL,红黑树,Treap,Size Balanced Tree(SBT)等。
7.
B
树
和
B
+
树
B树(Balanced Tree),也有人称为B-树(其实“-”只是英文连字符,注意不要说成B减树),适用于组织动态的索引结构。当查找的文件较大,且存放在磁盘等直接存取设备中时,为了减少查找过程中对磁盘的读、写次数,提高查找效率,基于直接存取设备的读、写操作以“页”为单位的特征。1972年R.Bayer和E.M.McCreight提出了一种称之为B树的多路平衡查找树。它适合在磁盘等直接存取设备上组织动态的查找表。
8.
哈
希
表
的
概
述
哈希法又称散列法、杂凑法或关键字地址计算法等。这种方法的基本思想是:首先在元素的关键字k和元素的存储位置p之间建立一个对应关系H,使得p=H(k),H称为哈希函数。创建哈希表时,把关键字为k的元素直接存入地址为H(k)的单元;以后当查找关键字为k的元素时,再利用哈希函数计算出该元素的存储位置p=H(k),从而达到按关键字直接存取元素的目的。
9.
哈
希
函
数
的
构
造
方
法
若对于关键字集合中的任一个关键字,经哈希函数映像到地址集合中任何一个地址的概率是相等的,则称此类哈希函数为均匀的哈希函数。换句话说,就是使关键字经过哈希函数得到一个“随机的地址”,以便使一组关键字的哈希地址均匀分布在整个地址区间中,从而减少冲突。
10.
处
理
冲
突
的
方
法
下面以创建哈希表为例,说明解决冲突的方法。常用的解决冲突的方法有以下四种。
(1)开放地址法
(2)再哈希法
(3)链地址法
(4)建立一个公共溢出区
11.
哈
希
表
的
实
现
哈希表的实现首先需要初始化一个哈希表作为存储结构,然后按哈希函数的计算值将记录存入相应的地址中。当哈希表建完后,主要的操作有:将关键字插入到哈希表、或从哈希表中删除指定关键字、已知关键字的记录进行查找、当结束操作时释放哈希表等。
12.
哈
希
表
的
查
找
分
析
由于冲突的存在,哈希法仍需进行关键字比较,
您可能关注的文档
最近下载
- 研究院LNG冷能利用.ppt VIP
- [中央]2024年中国记协新闻培训中心招聘 笔试上岸试题历年典型考题及考点剖析附答案详解.docx
- (陶矜老师课件)股权设计与合伙人激励.pdf VIP
- if与unless专项练习.doc VIP
- 2023年北京市高考化学试卷(解析版).pdf VIP
- 有限空间作业安全管理监理实施细则(新).pdf VIP
- 直播电商与案例分析第10章 农产品直播解析.ppt VIP
- 2023款 R18 B 宝马摩托车 中文 用户保养手册 使用说明书.pdf VIP
- 2022年国家公务员考试《公安专业科目》题(网友回忆版).docx VIP
- USCAR38 超声波焊接技术标准和要求(中文版).pdf VIP
文档评论(0)