前序遍历
import java.util.*;
class Solution {
public List<Integer> list = new ArrayList<>();
public void preorder(TreeNode root){
if(root==null) return ;
list.add(root.val);
preorderTraversal(root.left);
preorderTraversal(root.right);
}
public List<Integer> preorderTraversal(TreeNode root) {
preorder(root);
return list;
}
}
中序遍历
import java.util.*;
class Solution {
public List<Integer> inorderTraversal(TreeNode root) {
List<Integer> list = new ArrayList<>();
inorder(root,list);
return list;
}
public void inorder(TreeNode root,List<Integer> list){
if(root==null) return ;
inorder(root.left,list);
list.add(root.val);
inorder(root.right,list);
}
}
后序遍历
import java.util.*;
class Solution {
public List<Integer> postorderTraversal(TreeNode root) {
List<Integer> list = new ArrayList<>();
postorder(root,list);
return list;
}
public void postorder(TreeNode root,List<Integer> list){
if(root==null) return;
postorder(root.left,list);
postorder(root.right,list);
list.add(root.val);
}
}
欢迎留言一起交流讨论!