数据结构与控制算法分析(PPT专题讲稿)查找与排序

数据结构与控制算法分析 专题三 查找与排序
查找与排序 专题三 数据结构与控制算法分析

学习内容与要求 学习和掌握顺序査找和折半查找算法的原理 和实现; 学习和掌握二叉排序树的概念及其构造方法、 二叉排序树的查找算法原理 学习和掌握选择排序、交换排序、插入排序、 归并排序和快速排序方法的原理。 第2页
学习内容与要求 • 学习和掌握顺序查找和折半查找算法的原理 和实现; • 学习和掌握二叉排序树的概念及其构造方法、 二叉排序树的查找算法原理。 • 学习和掌握选择排序、交换排序、插入排序、 归并排序和快速排序方法的原理。 第 2 页

1 Search (查找/搜索) 第3页
1 Search (查找/搜索) 第 3 页

所谓查找(或搜索),就是在数据 集合中寻找满足某种条件的数据对象 1查找成功即找到满足条件的数据 对象时,作为结果,可报告该对象在结构 中的位置,还可给出该对象中的具体信息 2.查找不成功或搜索失败。作为结果 应报告一些信息,如失败标志、位置等。 第4页
第 4 页 所谓查找(或搜索),就是在数据 集合中寻找满足某种条件的数据对象: 1.查找成功 即找到满足条件的数据 对象时, 作为结果, 可报告该对象在结构 中的位置, 还可给出该对象中的具体信息。 2.查找不成功 或搜索失败。作为结果, 应报告一些信息, 如失败标志、位置等

通常称用于查找的数据集合为查找 结构,它是由同一数据类型的数据 (或记录)组成。 每个对象有若干属性,其中有一个 属性,其值可唯一地标识这个对象 称为关键字。使用基于关键字的搜 索,査找结果应是唯一的。但在实 际应用时,查找条件是多方面的, 可以使用基于属性的查找方法,但 查找结果可能不唯 第5页
◼ 通常称用于查找的数据集合为查找 结构,它是由同一数据类型的数据 (或记录)组成。 ◼ 每个对象有若干属性,其中有一个 属性,其值可唯一地标识这个对象, 称为关键字。使用基于关键字的搜 索,查找结果应是唯一的。但在实 际应用时,查找条件是多方面的, 可以使用基于属性的查找方法,但 查找结果可能不唯一。 第 5 页

实施査找时有两种不同的环境 静态环境查找结构不需进行插入和 删除操作。 静态查找表 动态环境查找过程中可能要对查找 结构执行数据插入、删除或修改等操 作,并对查找结构进行调整,结构可 能发生变化。 动态查找表 动态查找表的表结构是在查找过程中动态生成 的。 第6页
实施查找时有两种不同的环境 ◼ 静态环境 查找结构不需进行插入和 删除操作。 ⎯ 静态查找表 第 6 页 ◼动态环境 查找过程中可能要对查找 结构执行数据插入、删除或修改等操 作,并对查找结构进行调整,结构可 能发生变化。 ⎯ 动态查找表 ◼动态查找表的表结构是在查找过程中动态生成 的

11顺序查找( Sequential Search >以线性结构表示静态查找表。 >基本原理:将待查找记录依 次逐个与表中记录进行比较。 第7页
第 7 页 ➢以线性结构表示静态查找表。 ➢基本原理:将待查找记录依 次逐个与表中记录进行比较。 1.1 顺序查找(Sequential Search)

顶序查找过程(从前向后查找 SLelem 213788199205645680753 01234567891011 假设给定查找值e=64, ST Length=11 要求 SL elema=e,问:k=? 第8页
第 8 页 21 37 88 19 92 05 64 56 80 75 13 0 1 2 3 4 5 6 7 8 9 10 11 ST.Length=11 SL.elem 顺序查找过程(从前向后查找) 假设给定查找值 e=64, 要求 SL.elem[k] = e, 问: k = ? k k

顺序查找过程(从后向前查找) 0单元用于存放待查找关键字,作为“哨兵”( guard) SLelem 返回7i 642137881992056456807513 01234567891011 key=64 ST Length=ll 返回0 SL elem 602137881992056456807513 01234567891011 key=60 T Length=112页
第 9 页 21 37 88 19 92 05 64 56 80 75 13 0 1 2 3 4 5 6 7 8 9 10 11 ST.Length=11 SL.elem i 21 37 88 19 92 05 64 56 80 75 13 0 1 2 3 4 5 6 7 8 9 10 11 ST.Length=11 SL.elem i 60 i key=64 key=60 i 64 顺序查找过程(从后向前查找) 0单元用于存放待查找关键字,作为“哨兵”(guard) 返回0 返回7

顺序查找算法实现(从后向前查找) int Search Seq( tb sl, type key SLelem[o].key=key;“哨兵” for (i=SL length; SL elem[i]. key =key );∥/从后往前找 return i;/查找成功时为有效下标否则为0 第10页
第 10 页 int Search_Seq( TB SL, TYPE key ) { SL.elem[0].key = key; // “哨兵” for (i=SL.length; SL.elem[i].key!=key; --i); // 从后往前找 return i; // 查找成功时i为有效下标,否则i为0 } 顺序查找算法实现(从后向前查找)
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)查找、排序.pptx
- 浙江大学:《计算机控制装置》课程教学资源(PPT讲稿)计算机控制系统的抗干扰设计.ppt
- 浙江大学信息与电子工程学系:《无线网络应用》课程教学资源(PPT讲稿)网线制作实验.ppt
- 浙江大学:R语言基础(PPT讲稿).pptx
- 分布式虚拟环境:虚拟现实的基础理论、算法及实现项目结题报告(分布并行图形绘制技术及系统).ppt
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)程序设计专题——结构.pptx
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)程序设计专题——结构化程序设计与递归函数.pptx
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)SDL(Simple DirectMedia Layer)图形程序设计.pptx
- 《计算机辅助设计(CD)》课程教学大纲.pdf
- MATLAB简介.ppt
- 《数字图像处理技术 Digital Image Processing》课程教学资源(教学大纲).pdf
- linux系统知识培训(PPT讲稿).pptx
- 高性能计算机和曙光GHPC1000集群系统.ppt
- 曙光:机群应用开发(并行编程原理及程序设计)Parallel Programming - Fundamentals and Implementation(MPI并行程序设计 Parallel Programming with the Massage Passing Interface(MPI)).ppt
- 中科院昆明动物研究所培训:曙光5000A超级计算机.ppt
- 《网页设计教程》PPT课件:第9章 美化网页.ppt
- 《网页设计教程》PPT课件:第8章 网页表单的处理.ppt
- 《网页设计教程》PPT课件:第7章 在网页中使用超链接.ppt
- 《网页设计教程》PPT课件:第6章 网页图像处理.ppt
- 《网页设计教程》PPT课件:第5章 网页框架的处理.ppt
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)简单图形库介绍.pptx
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)数据可视化基础.ppt
- Python的基本应用(PYTHON的入门应用).pptx
- 浙江大学计算机科学与技术学院:C语言程序设计基础与试验(PPT讲稿).ppt
- 耶鲁大学:A Sparse Parametric Mixture Model for BTF Compression, Editing and Rendering.ppsx
- 浙江大学:程序设计专题(PPT讲稿)结构化程序设计与递归函数(刘新国).pptx
- 浙江大学:循环结构(PPT讲稿).pptx
- 浙江大学:《计算机辅助设计与图形学》课程教学资源(PPT讲稿)基于图像的绘制技术 Image Based Rendering, IBR.ppt
- 浙江大学计算机系:网络图形技术 Chinagraph‘2000 讨论组.ppt
- 结构(9.1 构建手机通讯录 9.2 结构变量 9.3 结构数组 9.4 结构指针).ppt
- 大型综合程序范例解析(PPT讲稿).ppt
- 生物信息数据分析技能培训:计算机基础技能培训(linux基础知识).pptx
- 浙江大学:虚拟现实中基于图像的建模和绘制(报告PPT).ppt
- 《E-commerce 2014》电子商务(PPT讲稿)Chapter 9 Online Retail and Services.ppt
- 清华大学出版社:《WEB技术开发》课程教学资源(PPT课件)第1章 WEB开发技术概述.ppt
- 《E-commerce 2014》电子商务(PPT讲稿)Chapter 12 B2B E-commerce:Supply Chain Management and Collaborative Commerce.ppt
- 《WEB技术开发》教学资源(PPT讲稿)HTML AND CSS.ppt
- 《E-commerce 2014》电子商务(PPT讲稿)Chapter 5 E-commerce Security and Payment Systems.ppt
- 杭州电子科技大学:《计算机、互联网和万维网简介》教学资源(PPT课件)Chapter 01 C++ Programming Basics.ppt
- 香港浸会大学:《Data Communications and Networking》课程教学资源(PPT讲稿)Chapter 10 Circuit Switching and Packet Switching.ppt