书签 分享 收藏 举报 版权申诉 / 26
上传文档赚钱

类型特殊二叉树09课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3308520
  • 上传时间:2022-08-18
  • 格式:PPT
  • 页数:26
  • 大小:301KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《特殊二叉树09课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    特殊 二叉 09 课件
    资源描述:

    1、第六章 特殊二叉树新疆师范大学新疆师范大学第1页,共26页。6.1二叉排序树二叉排序树n定义:二叉排序树或是一棵空树,或是具有下列性质的二叉树:若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值 若它的右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值 它的左、右子树也分别为二叉排序树第2页,共26页。二叉排序树的抽象数据类型操作:Find(查找)Update(更新)Insert(插入)Delete(删除)第3页,共26页。查找Findn递归算法和非递归算法两种1、该递归算法为末尾递归,浪费系统空间资源时间复杂度:O(lbn)-假设该树为理想平衡树空间复杂度:O(lbn)2

    2、、该非递归算法时间复杂度:O(lbn)-假设该树为理想平衡树空间复杂度:O(1)第4页,共26页。更新Updaten与查找Find的区别:1、Update:将item的值赋值给该元素。Find:将该元素的值赋值给item带回。2、Update:参数可是值参或者引用参数(变参)。Find:参数只能是变参。第5页,共26页。例 10,18,3,8,12,2,7,3101810183101838101838 12101838 122101838 1227101838 12273中序遍历二叉排序树可得到一个关键字的有序序列插入10若二叉树为若二叉树为空,则空,则item作为根插入。作为根插入。第6页,

    3、共26页。插入Insertn递归算法和非递归算法:1、该递归算法也是末尾递归时间(空间)复杂度=查找算法2、该非递归算法时间(空间)复杂度=查找算法第7页,共26页。建立一棵二叉排序树ncreateBSTree该算法的时间复杂度是?O(nlbn)第8页,共26页。n二叉排序树的删除要删除二叉排序树中的p结点,分三种情况:p为叶子结点 只需修改p双亲f的指针f-left=NULL 或 f-right=NULL p只有左子树或右子树(单分支)p只有左子树,用p的左孩子代替p p只有右子树,用p的右孩子代替p p既有左子树又有右子树(双分支)删除第9页,共26页。删除双分支结点n方法一:1、把待删除

    4、结点的右孩子链接到中序前驱结点的右边;2、把待删除结点的左孩子连接到它所在的链接位置。该方法的缺点:容易增加树的深度,使树的结构变坏。双分支结点的中序前驱结点的右孩子一定为空,双分支结点的中序前驱结点的右孩子一定为空,左孩子可空可不空。左孩子可空可不空。第10页,共26页。删除双分支结点n方法二:方法二:1、把待删除结点的中序前驱结点的值赋值给该结点;、把待删除结点的中序前驱结点的值赋值给该结点;2、删除中序前驱结点、删除中序前驱结点(中序前驱只可能是中序前驱只可能是叶子结点叶子结点或只有左子树的或只有左子树的单分支结点单分支结点)第11页,共26页。二叉排序树小结 二叉排序树的查找,插入,删

    5、除运算的时间复杂度相同,都与二叉排序树的深度成正比。时间复杂度平均O(lbn),最坏情况O(n)。它们的空间复杂度:递归算法平均O(lbn),最坏情况O(n),非递归算法都是O(1).第12页,共26页。6.2 堆n分为大顶堆和小顶堆n小顶堆定义:具有如下特性的完全二叉树:1、若树根结点有左孩子,则根的值小于等于左孩子的值;2、若树根结点有右孩子,则根的值小于等于右孩子的值;3、以左右孩子为根的树又各是一个小顶堆。第13页,共26页。堆的抽象数据类型n操作:insertHeap插入deleteHeap删除第14页,共26页。堆的存储结构n堆是一个完全二叉树,那么适于采用哪种存储结构呢?顺序存储

    6、结构顺序存储结构第15页,共26页。插入1、将元素写入堆尾2、调整为新的堆:调整是自下而上的,直到以新元素的双亲为根的子树是堆为止;或者一直调整到堆顶为止。第16页,共26页。删除(删除堆顶元素)1、把堆尾元素移动到堆顶2、调整这棵树使其称为堆:调整是自上而下的,直到这棵树是堆为止;或者一直调整到叶子结点为止。第17页,共26页。堆小结n堆的删除算法和插入算法的时间复杂度为 O(lbn)n堆结构的使用范围:当每次需删除或取出的是最大或最小元素。第18页,共26页。哈夫曼树n基本术语:基本术语:路径:路径:结点序列k1,k2,.kj是k1到kj的路径。路径长度:路径长度:从k1到kj的路径中的分

    7、支数。也是结点数减1.结点的权:结点的权:结点上赋予的有意义的值。结点的带权路径长度:结点的带权路径长度:从树根到某结点的路径长度结点的权。树的带权路径长度:树的带权路径长度:树中所有叶子结点的带权路径长度之和。iniilwWPL1第19页,共26页。哈夫曼树n哈夫曼树:又称最优二叉树,指n个带权叶子结点构成的二叉树中WPL最小的二叉树。完全二叉树或满二叉树完全二叉树或满二叉树不一定不一定是最优二叉树,是最优二叉树,权值越大的结点但离树根越近的二叉树才是权值越大的结点但离树根越近的二叉树才是最优二叉树。最优二叉树。第20页,共26页。构造哈夫曼树n关键:关键:权值越大的叶子结点应该离根越近n构

    8、造方法:构造方法:已知:有n个叶子结点,权值为W=w1,w2,.wn1、找出权值最小的两个结点作为左、右孩子构成一棵二叉树,该二叉树的根结点的权是两个叶子结点权值之和。2、从W中删除这两个结点,并将该二叉树的根结点的权加入W中。3、重复1和2,直到W中只有一个元素为止。第21页,共26页。构造哈夫曼树的算法n存储结构nCreateHuffman和WeightPathLength二叉链表二叉链表第22页,共26页。哈夫曼编码n是哈夫曼树的一种应用举例:采用二进制数对字符A,B,C,D,E,F进行编码。方案一:等长编码WPL=75方案二:哈夫曼编码WPL=61第23页,共26页。线索二叉树一、概念1、中序前驱、中序后继2、线索、前驱(左)线索、后继(右)线索3、线索二叉树二、结点类型定义Struct TTreeNodeElemType data;Bool ltag,rtag;TTreeNode*left,*right;第24页,共26页。平衡二叉树一、概念1、平衡二叉树:有别于理想平衡树2、平衡因子:平衡树中平衡因子-1,0,13、最小不平衡子树第25页,共26页。作业247-6-1(1,2,3,4,5)上机作业:247-6-2(2,3)第26页,共26页。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:特殊二叉树09课件.ppt
    链接地址:https://www.163wenku.com/p-3308520.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库