二叉树的先序、中序、后序遍历

二叉树的先序、中序、后序遍历

表达式树

表示一个表达式树(expression tree)的例子。表达式树的叶子节点是操作数(operand),如常数或者变量,而其他的节点为操作符(operator)。如图
在这里插入图片描述

中序遍历

通过递归打印产生的第一个表达式“(a + b * c ) + ( ( d * e + f ) * g )”,这种先遍历左子树,然后访问根节点,最后遍历右子树的方法称为中序遍历(inorder traversal)。由于其产生的表达式类型,这种遍历很容易记忆。

后序遍历

另一种方法,先遍历打印左子树,然后遍历打印右子树,最后打印根节点,得到的表达式为“abc * + de * f + g * +”,这种遍历方法称为后序遍历(postorder traversal)。

先序遍历

第三种方法,先遍历打印根节点的操作符,后遍历打印左子树和右子树的操作数。得到的表达式为“+ + a * bc * + * defg”,这种遍历方法称为先序遍历(preorder traversal)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值