欢迎来到装配图网! | 帮助中心 装配图网zhuangpeitu.com!
装配图网
ImageVerifierCode 换一换
首页 装配图网 > 资源分类 > PPT文档下载
 

第5章二叉树与树ppt课件

  • 资源ID:187910402       资源大小:504.50KB        全文页数:77页
  • 资源格式: PPT        下载积分:10积分
快捷下载 游客一键下载
会员登录下载
微信登录下载
三方登录下载: 微信开放平台登录 支付宝登录   QQ登录   微博登录  
二维码
微信扫一扫登录
下载资源需要10积分
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

第5章二叉树与树ppt课件

kikkiiimM010122ADT BinTree isoperations BinTree createEmptyBinTree(void)创建一棵空的二叉树。创建一棵空的二叉树。BinTree consBinTree(BinTreeNode root,BinTree left,BinTree right)返回一棵二叉树,其根结点是返回一棵二叉树,其根结点是root,左右二叉树分别为,左右二叉树分别为left和和right。int isNull(BinTree t)判断二叉树判断二叉树t是否为空。是否为空。BinTreeNode root(BinTree t)返回二叉树返回二叉树t的根结点。若为空二叉树,则返回一特殊值。的根结点。若为空二叉树,则返回一特殊值。acbd先根次序周游:void preOrder(BinTree t)中根次序周游:void inOrder(BinTree t)后根次序周游:void postOrder(BinTree t)注意是抽象算法,需要根据二叉树的实现方式进行修改。在数组溢出时,通过程序扩充空间。struct BinTreeNode;/二叉树中结点typedef struct BinTreeNode *PBinTreeNode;/结点的指针类型struct BinTreeNode DataType info;/数据域 PBinTreeNode llink;/指向左子结点 PBinTreeNode rlink;/指向右子结点;由于递归是二叉树的固有特性,二叉树的许多处理都可以用递归算法来描述,因而,为了运算和参数传递的方便,不再对二叉树进行封装,直接将二叉树定义为指向结点的指针类型:typedef struct BinTreeNode *BinTree;在实际应用中,将二叉树作为参数传递时,可能需要传递二叉树根结点指针的地址避免被调用函数中修改根节点位置)。因而,为了说明方便,可以引入二叉树类型的指针类型:typedef BinTree *PBinTree;为区分左右指针和线索,需要在每个结点里增加两个标志位ltag和rtag,令:ltag=0,则llink是指针,指向结点的左子结点;ltag=1,则llink是线索,指向结点的对称序的前驱结点;rtag=0,则rlink是指针,指向结点的右子结点;rtag=1,则rlink是线索,指向结点的对称序的后继结点。struct ThrTreeNode;/线索二叉树中的结点*/typedef struct ThrTreeNode*PThrTreeNode;/指向线索二叉树结点的指针类型struct ThrTreeNode/线索二叉树中结点的定义 DataType info;PThrTreeNode llink,rlink;int ltag,rtag;typedef struct ThrTreeNode*ThrTree;/线索二叉树类型的定义typedef ThrTree*PThrTree;/线索二叉树类型的指针类型根堆。本节主要讨论小根堆。根堆。本节主要讨论小根堆。2212)1(iiiikkkk2212)2(iiiikkkk 2 3 5 9 10 7 8 14 12 11 16 n删除S中的最小元素。nend ADT PriorityQueue 2 3 9 10 5 8 14 12 11 16 7 4 3 4 9 10 5 8 14 12 11 16 7 nstruct HtNode *ht;/存放2*m-1个结点的数组n;ntypedef struct HtTree *PHtTree;/哈夫曼树类型的指针类型ADT Tree isoperations Tree createEmptyTree(void)创建一棵空树。创建一棵空树。Tree consTree(Node p,Tree t1,Tree ti)以以P为根,为根,t1 ti 为子树为子树 创建一棵树。创建一棵树。int isNull(Tree t)判断树判断树t是否为空树。是否为空树。Node root(Tree t)返回树返回树t的根结点。若为空树,则返回一特殊值。的根结点。若为空树,则返回一特殊值。Node parent(Node p)返回结点返回结点p的父结点。当指定的结点为根时,它没有父结点,返回一个特殊值。的父结点。当指定的结点为根时,它没有父结点,返回一个特殊值。Tree leftChild(Tree t)返回树返回树t的长子树。当指定树没有子树时,返回一特殊值。的长子树。当指定树没有子树时,返回一特殊值。Tree rightSibling(Tree t)返回树返回树t的右兄弟树。当指定树没有右兄弟子树时,返回一特殊值。的右兄弟树。当指定树没有右兄弟子树时,返回一特殊值。end ADT Treen程序实现递程序实现递归):归):void postOrder(Tree t)n程序实现非递归):void levelOrder(Tree t)ntypedef struct ParTree *PParTree;/树类型的指针类型struct EdgeNode /子表中结点的结构 int nodeposition;/子结点在结点表中的位置 struct EdgeNode *link;/指向下一个子表中的结点;struct ChiTreeNode /结点表中结点的结构 DataType info;/结点本身的信息 struct EdgeNode *children;/本结点子表的头指针;struct ChiTree /树结构 int MAXNUM /树中最大结点个数 int root;/根结点的下标 int n;/实际结点个数 struct ChiTreeNode *nodelist;/结点表;typedef struct ChiTree*PChiTree;/指向树的指针n;ntypedef struct CSNode*CSTree;/树类型定义,。树林F(R),其中树T1的根为r,r的子树为F(L)。(a)二叉树 (b)加连线 (c)删与右子结点的连线 (d)调整

注意事项

本文(第5章二叉树与树ppt课件)为本站会员(无***)主动上传,装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知装配图网(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!