递归方式实现二叉树的三种遍历

简介: 递归方式实现二叉树的三种遍历

递归方式实现二叉树的先序、中序、后序遍历:

理解递归序:递归遍历的本质是递归序,二叉树递归序,每个节点都会达到三次。先序、中序、后序都可以在递归序的基础上加工出来,第一次到达一个节点就打印就是先序、第二次打印即中序、第三次即后序。image.png

package com.harrison.class07;
public class Code01_RecursiveTraversalBT {
  public static class Node{
    public int value;
    public Node left;
    public Node right;
    public Node(int v) {
      value=v;
    }
  }
  public static void f(Node head) {
    if(head==null) {
      return ;
    }
    f(head.left);
    f(head.right);
  }
  public static void pre(Node head) {
    if(head==null) {
      return ;
    }
    System.out.print(head.value+" ");
    pre(head.left);
    pre(head.right);
  }
  public static void in(Node head) {
    if(head==null) {
      return ;
    }
    in(head.left);
    System.out.print(head.value+" ");
    in(head.right);
  }
  public static void pos(Node head) {
    if(head==null) {
      return ;
    }
    pos(head.left);
    pos(head.right);
    System.out.print(head.value+" ");
  }
  public static void main(String[] args) {
    Node head = new Node(1);
    head.left = new Node(2);
    head.right = new Node(3);
    head.left.left = new Node(4);
    head.left.right = new Node(5);
    head.right.left = new Node(6);
    head.right.right = new Node(7);
    pre(head);
    System.out.println("\n========");
    in(head);
    System.out.println("\n========");
    pos(head);
    System.out.println("\n========");
  }
}
目录
打赏
0
0
0
0
3
分享
相关文章
二叉树的各种遍历方式(留坑)
前序、中序、后序和层序 二叉树本身就是一个递归的产物,那前序举例,访问根节点,然后左节点,再右节点,如果左节点是一棵子树,那么就先访问左子树的根节点,再访问左子树的左节点,依次递归;而层序,使用队列进行辅助,实现广度优先搜索 ...
791 0
二叉树的三种遍历方式
二叉树的三种遍历方式
305 0
二叉树的三种遍历方式
二叉树的四种遍历方式
二叉树的四种遍历方式
213 0
二叉树的四种遍历方式
二叉树的三种遍历方式,含demo(递归与非递归)
前置知识: 什么是二叉树:一个递归的树形数据结构,每个节点最多有两个子节点;二叉树一般都是二分查找树,每个节点的值大于它左子节点的值,小于它右子节点的值
14791 0
二叉树的三种遍历方式,含demo(递归与非递归)
二叉查找树的建立,删除,非递归和递归查找给定元素,非递归和递归查找最大元素结点和最小元素结点
二叉查找树的建立,删除,非递归和递归查找给定元素,非递归和递归查找最大元素结点和最小元素结点