二叉树的先中后序遍历
package com.TreeNode;
/**
* 二叉树先中后顺序递归遍历
*/
public class DiGuiBianLi {
public static class Node {
public Node left;
public Node right;
public int val;
public Node(int value) {
this.val = value;
}
}
//先序遍历
public static void PreOrder(Node head) {
//如果头结点的左右子树都是空,返回到当前头结点
if (head == null) {
return;
}
PreOrder(head.left);
PreOrder(head.right);
}
//中序遍历
public static void InOrder(Node head) {
}
//后序遍历
public static void PostOrder(Node head) {
}
}
以先序遍历为例,思路是这样子的:
1、2、4,遍历到4,4的左孩子为空,还是4,4的右孩子为空,还是4,4的这棵子树遍历完成之后,返回到2,2的右子树5...