zoukankan      html  css  js  c++  java
  • 遍历二叉树顺序

    image

    二叉树的遍历顺序有:前向遍历、中序遍历、后续遍历、按层遍历四种。

    前向遍历:先根节点再左子树后右子树。

    image

    中序遍历:先左子树再根节点后右子树。(投影法快速实现遍历)。

    image

    后续遍历:先左子树再右子树后根节点

    image

    按层遍历:ABECDFG。

    二、二叉树的重构。

    已知一棵二叉树的先序遍历和中序遍历序列分别为:

    先序: A B C I D E F H G  

    中序:C I B E D A H F G

    先由先序遍历得知A为根,再由中序得知CIBED为左子树。再由先序得到各节点位置。

    image

    总结:先由先序遍历或者后续遍历确定根节点,再由中序遍历确定根节点的左右分支。然后对于左分支可以看做一个二叉子树,同样由左子树在先序遍历中的位置可以判断左子树的下一个根节点,再对照中序遍历即可。这个思想和排序中快速排序法的思想相似。

  • 相关阅读:
    C++---const
    qt--textEdit多行文本编辑框
    qt--QByteArray字节数组
    qt5--拖放
    qt5--自定义事件与事件的发送
    qt5--键盘事件
    qt5--鼠标事件
    qt5-事件过滤器
    qt5-event事件的传递
    qt-事件的接受和忽略
  • 原文地址:https://www.cnblogs.com/K2154952/p/4767706.html
Copyright © 2011-2022 走看看