二叉树的遍历

最近在北京去一家做C开发的公司笔试,考查了二叉树的三种遍历:前序(先序、先根)、中序(中根)、后序(后根)

题目如下:

              二叉树的前序遍历输出:ABDHEICFJK

                           中序遍历输出:DHBEIACJFK

画出此二叉树并写出后序遍历输出

推导过程如下:1.由前序输出知道树根为A,            再由中序知道A的左边为DHBEI,右边为CJFK

                       2.由前序遍历知B为左子树根节点,再由中序知道B的左边为DH,右边为EI

                       3.由前序遍历知D为左子树根节点,再由中序遍历知D没有左子树,右子树为H

                       4.由前序遍历知E为右子树根节点,再由中序遍历知E没有左子树,右子树为I

                       A的右子树依此论推,可得到二叉树如下图:

                                            A

                                   B               C

                            D           E               F

                                H            I       J       K

后序遍历输出:HDIEBJKFCA

另外由后序遍历和中序遍历,求出前序遍历思路类似,先后序输出最后为树根,再中序,按此顺序递归即可!

注意:已知前序和后序求中序结果不唯一

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值