由中序遍历和后序遍历还原二叉树_二叉树的中序列

由中序遍历和后序遍历还原二叉树_二叉树的中序列二叉树的前序遍历、中序遍历和后序遍历之间还原二叉树1、概念(1)前序遍历   a、访问根节点;b、前序遍历左子树;c、前序遍历右子树。(2)中序遍历   a、中序遍历左子树;b、访问根节点;c、中序遍历右子树。(3)后序遍历   a、后序遍历左子树;b、后续遍历右子树;c、访问根节点。2、前序遍历和中序遍历还原二叉树思想如下:  a、根据前序遍历结果,第一个元素为二叉树的根结…

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

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

二叉树的前序遍历、中序遍历和后序遍历之间还原二叉树

1、概念

(1)前序遍历

      a、访问根节点;b、前序遍历左子树;c、前序遍历右子树。

(2)中序遍历

      a、中序遍历左子树;b、访问根节点;c、中序遍历右子树。

(3)后序遍历

      a、后序遍历左子树;b、后续遍历右子树;c、访问根节点。

2、前序遍历和中序遍历还原二叉树

思想如下:

    a、根据前序遍历结果,第一个元素为二叉树的根结点;

    b、观察中序遍历结果,根结点左侧的为左子树,若左子树根结点前(后)再无任何元素,则左(右)子树的左分支为空;根结点右侧的为右子树,若右子树根结点前(后)再无任何元素,则左(右)子树的左分支为空;

    c、上面的过程是递归的。先找到当前树的根结点,然后划分为左右子树,再进入左子树重复上面的过程,最后进入右子树重复上面的过程,最终还原一棵树。

例:

    已知前序遍历:ABDHIEJKCFLMGNO

           中序遍历:HDIBJEKALFMCNGO

由中序遍历和后序遍历还原二叉树_二叉树的中序列

按照上述步骤先画出二叉树,然后在进行求解后序遍历结果。结果为:HIDJKEBLMFNOGCA

练习:

1、前序遍历:GDAFEMHZ

      中序遍历:ADEFGHMZ

    求得后序遍历结果为:AEFDHZMG

2序遍历:ADCEFGHB

      中序遍历:CDFEGHAB

    求得后序遍历结果为:CFHGEDBA

3、中序遍历和后序遍历还原二叉树

思想如下:

    a、根据后序遍历结果,最后一个元素为二叉树的根结点;

    b、观察中序遍历结果,其中根结点左侧为左子树,若左子树根结点前(后)再无任何元素,则左(右)子树的左分支为空;其中根结点右侧为右子树,若右子树根结点前(后)再无任何元素,则左(右)子树的左分支为空;

    c、上面的过程是递归的。先根据后序遍历结果找根结点,根结点左侧为左子树,右侧为右子树,再进入左子树重复上面的过程,最后进入右子树重复上面的过程,最终还原一棵树。

例:

    已知

中序遍历:HDIBJEKALFMCNGO

后序遍历:

HIDJKEBLMFNOGCA

         

由中序遍历和后序遍历还原二叉树_二叉树的中序列

按照上述步骤先画出二叉树,然后在进行求解前序遍历结果。结果为:

ABDHIEJKCFLMGNO

练习:可参考前序遍历和中序遍历的练习

4、前序遍历和后序遍历还原二叉树

已知前序和中序,后序和中序遍历序列之后,可以唯一确定一棵二叉树。但是,只知道前序和后序遍历序列,是无法知道哪个结点是左子树还算右子树。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193915.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux netstat -an命令,linux 命令之netstat[通俗易懂]

    linux netstat -an命令,linux 命令之netstat[通俗易懂]在linux中netstat命令的作用是查看TCP/IP网络当前所开放端口,所对应的本地和外地端口信息。netstat命令的格式netstat[-a][-e][-n][-o][-pProtocol][-r][-s][Interval]各参数选项的含义a显示所有socket,包括正在监听的。-c每隔1秒就重新显示一遍,直到用户中断它。-i显示所有网络接口的信息,格式“netstat-i”…

    2022年8月30日
    3
  • eclipse创建springboot项目的三种方法[通俗易懂]

    eclipse创建springboot项目的三种方法[通俗易懂]方法一安装STS插件安装插件导向窗口完成后,在eclipse右下角将会出现安装插件的进度,等插件安装完成后重启eclipse生效 新建springboot项目 项目启动 方法二1.创建Maven项目2.选择项目类型3.选择项目4.编写项目组和名称-finish即可5.修改pom.xml文件<!–…

    2022年10月13日
    3
  • IQ调制、整形滤波器与星座映射

    IQ调制、整形滤波器与星座映射

    2022年1月7日
    51
  • J1939 入门教程

    J1939 入门教程SAEJ1939协议是基于CAN2.0B协议之上的应用层协议,但是SAEJ1939协议并不仅仅是个应用层协议,她对物理层,数据链路层,网络层,应用层,故障诊断,网络层管理层等都做了详细的规定,只不过这其中很多规定都跟CAN2.0B一致。我们这里只介绍J1939的应用层,对软件开发来说已经足够。对熟悉CAN2.0B协议的小伙伴来说,其实只要掌握下面几个关键点,J1939就瞬间不再神秘。J…

    2022年5月1日
    89
  • portal入网认证_portal账号是什么

    portal入网认证_portal账号是什么**一、什么是Portal认证**根据国家有关上网规定,上网前必须进行身份认证。考虑到移动终端的复杂性,在终端上安装认证客户端进行身份认证是不现实的。几乎所有智能终端都配备了Web浏览器。最好通过网页进行身份验证。Portal认证(也称为Web认证)可以以网页的形式为用户提供身份认证和个性化信息服务。Portal认证系统典型的组网方式包括四个基本要素:认证客户端、接入设备、Portal服…

    2022年4月20日
    123
  • w ndows无法连接到System,Windows无法连接到System Event Notification Service服务解决方法…[通俗易懂]

    w ndows无法连接到System,Windows无法连接到System Event Notification Service服务解决方法…[通俗易懂]采用windows7操作系统的电脑在开机时提示“Windows无法连接到SystemEventNotificationService服务”(如下图)的解决方法:操作系统:Windows7旗舰版32位。(根据网上资料,本文的方法同样适用于:WindowsVista)问题描述:今晚开机,电脑自检时没什么问题,但输入登入密码后,等待了N分钟(非常的慢,硬盘指示灯也不怎闪烁,都以为死机…

    2022年5月14日
    147

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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