树的先序遍历对应二叉树的_先序遍历输入一个二叉树

树的先序遍历对应二叉树的_先序遍历输入一个二叉树笔试特别喜欢考这种题。先说一下思路。首先,需要明白前序、中序、后序遍历:①前序:根→左→右②中序:左→根→右③后序:左→右→根仅明白这个是不行的,还需要技巧。对于标题中的问题,我们很容易判断根节点是A,A的右节点是B,A的左边有CDFEGH,如下图:然后,将问题进行分解。去掉了AB结点之后,问题可分解如下:按照同样的套路,我们可以画出子问题的数大大概结构,如下图:与第一步画…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

笔试特别喜欢考这种题。先说一下思路。

  • 首先,需要明白前序、中序、后序遍历:
    ①前序:根→左→右
    ②中序:左→根→右
    ③后序:左→右→根
  • 仅明白这个是不行的,还需要技巧。对于标题中的问题,
    我们很容易根据前序遍历判断根节点是A,再根据中序遍历知道A的右节点是B,A的左边有CDFEGH,如下图:在这里插入图片描述
  • 然后,将问题进行分解。去掉了AB结点之后,问题可分解如下:
    在这里插入图片描述
    按照同样的套路,我们可以画出子问题的树的大概结构,如下图:
    在这里插入图片描述
    与第一步画出的图进行组合,可以得到下图:
    在这里插入图片描述
  • 然后又对问题进行分解,再删除CD,问题可分解如下:
    在这里插入图片描述
    相信你可以画出下面的结构:
    在这里插入图片描述
    与上面的树进行组合,可得到下图:
    在这里插入图片描述
    再将问题进行分解,删掉EF,问题可变成:
    在这里插入图片描述
    由先序遍历可知G是子问题的根结点,由中序遍历可知H是右结点,故可画出下图:
    在这里插入图片描述
    再与上面的树进行结合,可得出最后的结果,如下:
    在这里插入图片描述
    因为结果的图已经画出来了,所以后序遍历是:CFHGEDBA

总结

  1. 二叉树的遍历可用递归去解决,相信在画出树的结构之后,你能写出前、中、后序遍历,前提要了解递归是怎么进行的。
  2. 一旦知道了某个结点的位置,就删除它,将剩下的结点用同样的套路去解。
  3. 由前序遍历可判断根结点,再由中序遍历可判断“左后代”、“右后代”,也就是左边、右边都有哪些结点。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197779.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • java中高级面试题总结(全面)_java高级面试题大汇总

    java中高级面试题总结(全面)_java高级面试题大汇总参考了网上的面试题,整理了一份面试题的资料。String,StringBuffer,StringBuilder的区别是什么?String为什么是不可变的?String是字符串常量,后两者是字符串变量。其中,StringBuffer是线程安全的,而StringBuilder是非线程安全的,线程安全会带来额外的开销,所以StringBuilde

  • 银行风控模型

    银行风控模型风控催生原因对于银行来说,现今互联网贷款和信用卡办理面临的主要难题是数据和风控。站在银行或金融机构角度,自然而然是想获得更多的信息和数据,但是在收集数据这方面又是比较无力的。加上当下的发展趋势,消费贷以及贷款审批速度都要求快。如何在快的的过程中对客户进行一个全面的审查,得出一个合理的结果呢?如果没有详细的数据对客户进行评估,这势必会提高放贷的风险。风控概述所谓风控,是指多银行贷款资金的…

  • 遗传算法优化bp神经网络matlab代码_神经网络进化算法

    遗传算法优化bp神经网络matlab代码_神经网络进化算法最近在学遗传算法优化BP神经网络,从新浪博客,Matlab中文论坛以及《MATLAB神经网络43个案例分析》里看了许多资料,存在着缺少test函数,以及函数名调用错误等问题。自编了test函数,调整后,供大家参考,(在Matlab2006a亲测可行)。参考文献:《MATLAB神经网络的43个案例分析》王小川,史峰,郁磊等,北京航空航天大学出版社。flyingnosky的sina博…

  • ARMv8 Linux内核异常处理过程分析「建议收藏」

    ARMv8 Linux内核异常处理过程分析

  • 宽度学习(Broad Learning System)

    宽度学习(Broad Learning System)宽度学习系统(BLS)一词的提出源于澳门大学科技学院院长陈俊龙于2018年1月发表的《BroadLearningSystem:AnEffectiveandEfficientIncrementalLearningSystemWithouttheNeedforDeepArchitecture》

  • 琶音的正确弹奏法

    琶音的正确弹奏法

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号