J组一等奖冲刺:树论

                                             树论

        树有n-1条边,并且有n-nn个度为1的节点。那么洲足等式n-l-n,0+(n)in2化简可得no-nz+],证毕(5)具有n个节点的完全二叉树的深度为 [log2n] +l([x] 表示不超过x的最大整数)。
3.3.3二叉树的遍历
按照某种次序访问树的全部节点叫作树的遍历。常见的遍历方法有以下 4种。
(1)先序遍历:先访问根节点,再访问左子树,最后访问右子树。以图 3.12 为例,先序遍历结果为1一2一47-5一3一6。
(2) 后序遍历:先访问左子树,再访问右子树,最后访问根节点。以图3.12 为例,后
序遍历结果为7一4一5一2-6一3-1(3)中序遍历: 先遍历左子树,再访问根节点,最后访问右子树。以图3.12为例,中序遍历结果为7-4-2-5-1-3-6。
(4) 层次遍历: 按层次从小到大逐个访问,同一层次按照从左到右的次序。以图3.12 为例,层次遍历结果为1-2-3+4-5-6-7。
图3.12
3.3.4 二叉树的应用
1.前、中、后缀表达式
二叉树的应用之一是根据中缀表达式建立一棵二叉树,从而得到前缀表达式和后缀表
达式。普通的表达式即是中缀表达式,比如 3*(2-1)-1,建树的时候从左到右扫描表达式,扫描到的运算符作为子树的根节点,运算符两侧的数字或中间结果分别作为左子树和右子树,这样建树的目的是去掉括号,方便计算机进行计算。表达式 3*(2-1)-1 的建树过程
下。(1)第一个运算符*是一棵子树的根节点,两侧的 3 和(2-1)分别是它的左子树和右子如图 3.13 所示。
(2)*的右子树(2-1)是一个中间结果,可以继续建立子树,运算符-作为根节点,21 分别是它的两个叶子节点,如图 3.14 所示

· 其中的每个子集都是一棵树,这些集合称为这裸树的子树。树的概念包括
1)根节点。树有唯一的根节点,它没有前驱节点。
(2)度。一个节点的子树个数,称为这个节点的度。度为0的节点称为叶节点,部各节点的度的最大值称为这棵树的度。
(3)3子节点。节点的子树的根,称为该节点的子节点,该节点是子节点的父节点。
一个父节点的多个子节点互为兄弟节点。
(4)层次。定义一棵树的根节点的层次为1,其他节点的层次等于它的父节点层
加1.
(5)深度。一棵树中所有节点的层次的最大值称为树的深度。
(6)路径。对于树中任意两个不同的节点,如果从一个节点山发,自上而下沿着树
连着节点的边能到达另一节点,称它们之间存在着一暴赌。可用路径所经过的节点序表示路径,路径的长度等于路径上的节点个数减1。从根节点山发,到树中的其余节占.定存在着一条路径。
(7)森林。森林是着干棵互不相交的树的集合
二叉树的基本概念和性历3.3.2
二叉树是一种特殊的树形结构,它是度数为3的树,即二叉树的每个节点最多有朗4子节点。每个节点的子节点分别称为左孩了、有孩了,它的两棵子树分别称为左了树,子树。二叉树的特点如下。
(1)二叉树的第i层最多有2个节点
(2)深度为k的二叉树至多有 2"-1 个节点,
(3)一棵深度为k且有21个节点的二义树称为州一树,这树的特点是每层上节点数都是最大节点数。可以对满二叉树的节点进行诈纱编号,约定编号从根节点起,自上而下,从左到右依次递增。由此引出完全二义树的定义,深度为k、有n个节点的二树,当且仅当其每一个节点都与深度为k的满二叉树中编号从1到口的节点一一对应时称为完全二叉树,如图3.11 所示。

(4)对任意一楼二又树,如果其叶节点数为,度为2节点数为,则一定满nn+1
证明,般设二又树有#个节点,其中看个叶节点,5个度为2的节点,可知选二

(3)最后一个运算符是-,它的右子树,如图3.15所示

此时完成建树,对该树进行中序遍历就是表达式 3*(2-1)-1,进行前序遍历便表达式-*3-211,进行后序遍历便得到后缀表达式321-*1-。

  • 25
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值