1. 程式人生 > >【LeetCode】#145二叉樹的後序遍歷(Binary Tree Postorder Traversal)

【LeetCode】#145二叉樹的後序遍歷(Binary Tree Postorder Traversal)

【LeetCode】#145二叉樹的後序遍歷(Binary Tree Postorder Traversal)

題目描述

給定一個二叉樹,返回它的 後序 遍歷。

示例

輸入: [1,null,2,3]

1
 \
  2
 /
3 

輸出: [3,2,1]

Description

Given a binary tree, return the postorder traversal of its nodes’ values.

Example

Input: [1,null,2,3]

1
 \
  2
 /
3

Output: [3,2,1]

解法

class Solution {
    public List<Integer> postorderTraversal(TreeNode root) {
        List<Integer> res = new ArrayList<>();
        if(root==null)
            return res;
        helper(root, res);
        return res;
    }
    public void helper(TreeNode node, List<Integer> res){
        if(node.left!=null)
            helper(node.left, res);
        if(node.right!=null)
            helper(node.right, res);
        res.add(node.val);
        return;
    }
}