大学计算机基础-第6章.pptVIP

  1. 1、本文档共83页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大学计算机基础-第6章

*/77 后序遍历左子树 后序遍历右子树 访问根结点 后序遍历 A T X C Z Y B P 深度为4的二叉树 遍历结果: A T X C Z Y B P 深度为4的二叉树 A T Z B C X Y P 因为左子树空,故遍历右子树 */77 6.4 典型算法 对非数值型数据通常有插入、删除、查找和排序等操作。其中查找和排序是数据处理中比较重要的算法。 查找又称检索,是指在数据集合中查找某个数据元素的过程。若存在这样数据元素,则查找成功;否则,查找失败。 6.4.1 查找 */77 1.顺序查找 适用于线性表,其基本方法是 : 从线性表中第一个元素开始,依次将线性表中的元素与给定值进行比较。 若相等,则查找成功; 若直到最后一个元素,还没找到与给定值相等的元素,则查找失败。 */77 例如:在顺序表( 88, 15, 23, 80, 63, 8, 86, 46, 71, 101 )中, 查找 值为71的数据元素。 从线性表中第一个元素88开始, 依次将 线性表中元素与71进行比较。 直到第九个元素为71, 查找成功。 特点:顺序查找算法简单,但是执行效率较低 在下列两种情况下,只能使用顺序查找法: ?线性表是线性链表。 ?线性表是顺序表,但表中元素无序排列。 此题比较了9次 */77 2.二分查找 又称折半查找,要求被查找的表采用顺序存储结构且数据元素按数据值升序或降序排列, 即二分查找法只适用于有序表。 基本思想是(设顺序表升序排列): 将给定值与中间位置元素比较,若相等,则 查找成功; 若给定值小于元素值,则继续对前半部分 再进行折半查找; 若给定值大于中间位置元素值,则继续对后半部分再进行折半查找。 */77 例:在有序顺序表(8,15,23,46,63,71,80,86,88,101)中,用折半查找法查找值为 71 的数据元素。 key=71 8 15 23 46 63 71 80 86 88 101 1 2 3 4 5 6 7 8 9 10 第一次查找mid=5 第二次查找mid=8 第三次查找mid=6 71 80 86 88 101 6 7 8 9 10 6371,故在后半部分进行折半查找 8671,故在前半部分进行折半查找 71 80 6 7 71=71,查找成功 */77 6.4.2 排序算法 排序是将一组无序数据按值递增(或递减)进行重新排列。 三类基本排序方法 交换排序法 选择排序法 插入排序法 */77 1.交换排序法 在排序过程中, 通过数据元素之间不断地进行比较与交换, 最终达到排序目的。 冒泡排序法的基本思想是: 对所有相邻元素进行比较,若逆顺,则将其交换,最终达到有序化。 */77 交换排序法 原序列: 42 23 16 47 11 45 13 49 42 23 16 47 11 45 13 49 第1 遍 第2遍 第3遍 第4遍 第5遍 第6遍 23 16 42 11 45 47 13 49 16 23 11 42 45 13 47 49 16 23 11 42 45 13 47 49 11 23 16 13 45 42 47 49 11 13 16 23 45 42 47 49 每次从待排序数据序列中,选择出最小元素并定位到待排序(升序)序列最前面。 简单选择排序法的基本思想是: ?扫描整个序列,从中选出最小元素,将它交换到最前面; ?再从剩余子序列中,选出最小元素,交换到子序列最前面。 ?依次类推,直到子序列长度为1为止。 */77 2.选择排序法 由于每遍扫描只能确定一个元素位置,所以对于长度为n的序列,需要扫描n-1遍才能将每个元素位置确定下来。 */77 原序列: 42 23 16 27 11 45 13 49 选择排序法 第1遍选择 42 23 16 27 11 45 13 49 11 23 16 27 42 45 13 49 第2遍选择 11 13 16 27 42 45 23 49 第3遍选择 11 13 16 27 42 45 23 49 第4遍选择 11 13 16 23 42 45 27 49 第5遍选择 11 13 16 23 27 45 42 49 第6遍选择 11 1

文档评论(0)

asd522513656 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档