- 前序遍历是指,对于树中的任意节点来说,先打印这个节点,然后再打印它的左子树,最后打印它的右子树。
- 中序遍历是指,对于树中的任意节点来说,先打印它的左子树,然后再打印它本身,最后打印它的右子树。
- 后序遍历是指,对于树中的任意节点来说,先打印它的左子树,然后再打印它的右子树,最后打印这个节点本身
/**
public class TreeNode {
int val = 0;
TreeNode left = null;
TreeNode right = null;
public TreeNode(int val) {
this.val = val;
}
}
*/
public class Solution {
// 前序遍历 根、左、右
public void preOrder(TreeNode root) {
if(root == null) return;
System.out.println(root.val);
preOrder(root.left);
preOrder(root.right);
}
// 中序遍历 左、根、右
public void inOrder(TreeNode root) {
if(root == null) return;
inOrder(root.left);
System.out.println(root.val);
inOrder(root.right);
}
// 后序遍历 左、右、根
public void postOrder(TreeNode root) {
if(root == null) return;
postOrder(root.left);
postOrder(root.right);
System.out.println(root.val);
}
}