- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 查 找 第九章 查 找 9.1 概述 9.2 顺序表的查找 9.3 树表的查找 9.4 散列表的查找 9.1 概述 查找是软件设计中最常用的运算,例如, 查字典,辞典,电话号码, 高考成绩查询 ,考验成绩查询 因此,查找方法的性能会影响到软件系统的性能。 对此,涉及到几个相关的问题: 如何设计查找方法? 如何评价查找性能? 如何组织数据能更好地提高查找的性能? 本章主要内容: 介绍查找的相关概念, 围绕几种常见的数据表讨论查找的方法,并分析其性能。 9.1 概述 查找: ——在数据集(表)中找出一个特定元素(的位置)。 这一概念中涉及到以下几个相关的问题: 数据表:什么数据表?也就是数据表的组织形式?例如: 汉语字典和英语辞典的组织就有明显差异。 一个城市的电话号码簿。 高考成绩表。 查找表: ——同类型的数据元素(记录)所构成的集合。 顺序表:数据元素构成一个序列。 树表:以树结构的形式组织。 散列表:以某种函数的方式来确定元素的地址实现数据表的组织。 索引表:为元素建立索引,以提高查找的速度。 显然,查找的方法取决于数据表的组织形式。 例如:在汉语字典和英语辞典中的查找就有明显差异。 因此,如何更好地在给定的数据表中查找? 9.1 概述 特定元素: 如何标识所需要查找的元素?以字段来标识。 字段: ——查找表中的元素有多项信息组成,每一项称为一个字段。 例如,高考成绩信息中,包括姓名、准考证号、各单科成绩和总分等字段。 关键字: ——可以标识元素的字段 主关键字:唯一标识一个元素的字段 例如,高考成绩信息中的“准考证号”字段。 次关键字:可能标识到多个元素的字段 例如,高考成绩信息中的“考生姓名”字段,因为现实中有太多同名同姓的人。 查找性能的评价:以查找长度来描述 查找长度: ——查找过程中所做的元素或关键字的比较次数。 包括: 平均查找长度ASL, 最大查找长度 失败查找长度 9.2 顺序表的查找 基本方法: 设查找表以一维数组来存储,要求在此表中查找出关键字的值为x的元素的位置,若查找成功,则返回其位置(即下标),否则,返回一个表示元素不存在的下标(如0或-1)。 简单顺序查找 有序表查找——二分查找(折半查找) 索引表查找 9.2 顺序表的查找——简单顺序查找 简单顺序查找 9.2 顺序表的查找——简单顺序查找算法1 9.2 顺序表的查找——简单顺序查找算法2 简单顺序查找 从右向左 9.2 顺序表的查找——简单顺序查找算法2 简单顺序查找 监视哨 9.2 顺序表的查找——简单顺序查找 6.2 顺序表的查找——二分查找 6.2 顺序表的查找——二分查找算法描述 查找过程如下:设查找区域的首尾下标分别用变量low和high表示(初值分别为0和n-1,其中数组的下标从0开始,这与简单顺序查找中略有不同),将待查关键字x和该区域的中间元素 (其下标mid的值为low和high的算术平均值,即(low+high)/2) 的关键字进行比较,并根据比较的结果分别作如下处理: (1) x==A[mid].key: 查找成功,返回mid的值。 (2) xA[mid].key: 说明待查元素只可能在左边区域(下标从low到mid-1),因此,应在此区域继续查找。 (3) xA[mid].key: 说明待查元素只可能在右边区域(下标从mid+1到high) ,因此,应在此区域继续查找。 若表中存在所要查找的元素,则经过反复执行上述过程可以很快地找到,并返回元素下标,否则,返回-1以表示查找失败。 9.2 顺序表的查找——二分查找算法模拟 有序查找——二分查找(折半查找) 例:在0—9号元素中查找元素值为47的元素 9.2 顺序表的查找——二分查找算法实现 算法流程图 9.2 顺序表的查找——二分查找算法实现 非递归算法 递归算法 int binsearch(element A[
您可能关注的文档
- 韩山师范学院大学语文课件 鲁迅.ppt
- 韩山师范学院大学语文课件 鲁迅《伤逝》郁达夫《迟桂花》.ppt
- 韩山师范学院大学语文课件 鲁迅《在酒楼上》郁达夫《春风沉醉》.ppt
- 韩山师范学院大学语文课件 陆游诗.ppt
- 韩山师范学院大学语文课件 论语十则.ppt
- 韩山师范学院大学语文课件 罗大佑 现象七十二变.ppt
- 韩山师范学院大学语文课件 茅盾.ppt
- 韩山师范学院大学语文课件 明清散文.ppt
- 韩山师范学院大学语文课件 穆旦《赞美》.ppt
- 韩山师范学院大学语文课件 女孩子的花.ppt
- 2025年山东省济南市普通高校对口单招综合素质自考真题(含答案).pdf
- 2025年山东省枣庄市护士执业资格考试《专业实务》模拟试题及答案2025.pdf
- 北京小升初英语翻译专题训练含答案-5篇.docx
- 北京小升初英语翻译专题训练含答案5套.docx
- 2025年山东省建筑安全员《C证》考试模拟题及答案 .pdf
- 2025年山东省公务员行政职业能力测验模拟试题及答案解析(6) .pdf
- 2025年山东省单招语文试题 .pdf
- 金属加工知识培训班课件.pptx
- 2025年山东省二级造价工程师工程计量与计价实务第一章要点笔记 .pdf
- 2025年山东省威海市社会工作者职业资格社会工作综合能力(初级)真题(含答案).pdf
最近下载
- 国新办“924”政策组合拳深度解读:创新货币政策工具箱,多措并举推动经济高质量发展.docx
- 售电企业电力交易负荷预测管理导则.pdf VIP
- 发电企业电力市场交易辅助决策信息系统技术规范.pdf VIP
- 北斗产业园项目可行性研究报告.docx
- 2024电力现货交易辅助决策系统解决方案.pdf
- 2023发电企业现货交易辅助决策管理系统.docx
- KSC20系列开关磁阻电动机控制器使用说明书V_1.2.docx
- 一种电力现货交易辅助决策系统模型.pdf VIP
- 北斗产业园风险分析与应对策略.docx
- Unit 1 Greetings P1 Greet each other(教学课件)一年级英语上学期(沪教版 2024).pptx
文档评论(0)