加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

【关于二叉树】前/后/中缀表达式 前后中序遍历

(2012-10-26 20:36:16)
标签:

杂谈

分类: C/Cxx语言

一、前缀表达式、后缀表达式、中缀表达式

表达式 a*(b+c)-d是中缀表达式,转化成二叉树后,它是中序遍历的结果


二叉树如下图:
______(-)_________
_____/___\________
____(*)__(d)______
____/__\__________
__(a)__(+)________
______/___\_______
____(b)___(c)_____
后缀表达式,就是后序遍历该二叉树,所得到的序列,也就是:abc+*d-
同样的道理,前缀表达式是前序遍历二叉树,所得到的序列,是:-*a+bcd

二、前序遍历、后缀表达式、中缀表达式

前序遍历(DLR)

  
前序遍历也叫做先根遍历,可记做根左右
前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
注意的是:遍历左右子树时仍然采用前序遍历方法。

中序遍历(LDR) 

 
中序遍历也叫做中根遍历,可记做左根右。
中序遍历首先遍历左子树,然后访问根结点,最后遍历右子树。在遍历左、右子树时,仍然先遍历左子树,再访问根结点,最后遍历右子树。
注意的是:遍历左右子树时仍然采用中序遍历方法。

后序遍历(LRD) 

  
后序遍历也叫做后根遍历,可记做左右根。

 后序遍历首先遍历左子树,然后遍历右子树,最后访问根结点。在遍历左、右子树时,仍然先遍历左子树,再遍历右子树,最后访问根结点。

注意的是:遍历左右子树时仍然采用后序遍历方法。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有