新数据结构与算法应用教程 教学课件 高佳琴 第8章完 排序与查找.pptVIP

新数据结构与算法应用教程 教学课件 高佳琴 第8章完 排序与查找.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.选择题 (1)排序是根据的大小重新安排各元素的顺序。 (2)稳定的排序方法是指在排序中,关键字相等的不同记录间的前后相对位置。 (3)不稳定的排序方法是指在排序中,关键字相等的不同记录间的前后相对位置。 (4)内部排序是指在排序的整个过程中,全部数据都在计算机的。 (5)直接插入排序的方法是的排序方法。 (6)用冒泡排序的方法对n个数据进行排序,第一趟共比较对元素。 (7)采用顺序查找法检索长度为n的线性表,则检索每个元素的平均比较次数为。 (8)对线性表进行二分查找时,要求线性表必须是。 2.选择题 (9)有一个有序表(1,4,6,10,18,35,42,53,67,71,78,84,92,99),当用二分查找法查找键值为84的结点时,经次比较后查找成功。 (10) 设散列表长度为m,散列函数为H(key)=key%p,为了减少发生冲突的可能性,p应取。 3.算法设计题 (1)给定表(19,14,22,01,66,21,83,27,56,13,10),试按元素在表中的顺序构造一棵二叉排序树。 (2)现有线性表的关键字集合{33,41,20,24,30,13,01,67}共8个数据元素,已知散列函数为H(k)=(3k)%11,用开放定址法解决冲突,且d1=h(k),di=(di-1+(7k)%10+1)%11(2≤i<8)。 (3)已知一个有序表(13,18,24,35,47,50,62,83,90,115,134),写出利用二分查找法查找90的过程。 (4)编写一个函数,利用二分查找法在一个有序表中插入一个元素x,并保持表的有序性。 2.实验内容 (1)按提示输入10个整型数据,每个数据中间用一空格输出。 (2)程序达到的功能要求对输入的10个数据进行排序。 4.使用说明 (1)按提示输入10个整型数据。 (2)在菜单中选择排序的方法。 (3)查看排序结果。 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: 数据结构与算法实用教程 主编 高佳琴 第8章 排序与查找 本章要点: 1)排序的基本概念。 2)插入排序。 3)交换排序。 4)选择排序。 5)查找的基本概念。 6)顺序查找方法的实现。 7)二叉排序树。 第8章 排序与查找 8.1 排序基本概念 8.2 简单排序方法 8.3 快速排序 8.4 归并排序 8.5 查找基本概念和术语 8.6 静态查找表 8.7 动态查找表 8.8 哈希表查找 8.1 排序基本概念 1)内排序:指待排序列完全存放在内存中所进行的排序过程,适合不太大的元素序列。 2)外排序:指排序过程中还需访问外存储器。 8.2 简单排序方法 1.简单选择排序 2.直接插入排序 3.冒泡排序(bubble sort) 8.3 快速排序 快速排序(quick sort〖DK〗)又称分划交换排序 8.4 归并排序 1)若n较小,可采用直接插入排序或直接选择排序。 2)若记录的初始状态已经按关键字基本有序,则选用直接插入排序或冒泡排序法为宜。 3)若n较大,则应采用时间复杂度为O(nlog2n)的排序方法。 8.5 查找基本概念和术语 查找又被称为检索,它是指在某种数据结构的基础上找出符合给定条件的元素。查找是一种十分重要的操作,如在图书馆的书目中找出读者需要的图书,在电话簿中找出客户信息等。 8.6 静态查找表 1.顺序查找 2.二分查找 3.分块查找 1.顺序查找 1)省去判定循环中下标越界的条件,从而节约比较时间。 2)保存查找值的副本,查找时若遇到它,则表示查找不成功。 2)保存查找值的副本,查找时若遇到它,则表示查找不成功。 2.二分查找 1)先设定3个辅助标志:low,high,mid。 2)运算步骤。 ①low=1,high=11 ,故mid=6,待查范围是 [1,11]。 ②若ST.r[mid].key key,说明key在[ mid+1,high]之间。令:low=mid+1,重算mid=(low+high)/2。 ③若 ST.r[mid].keykey,说明key在[low,mid-1]之间。令:high =mid-1,重算mid=(low+high)/2。 ④若 ST.r[mid].key=key,说明查找成功,元素序号=mid。 3)结束条件。 ①查找成功 : ST.r[mid].key=key。 ②查找不成功 : highlow(即区间长度小于0)。 (1)查找关键字为22的过程 (2)查找关键字为85的过程 (1)查找关键字为22的过程 ①设置辅助标志。    low=1       mid=6      high=11 ②2256 high=mid-1,↑↑↑

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档