标签:des style blog color io os java ar strong
Given a binary tree, return the postorder traversal of its nodes‘ values.
For example:
Given binary tree {1,#,2,3}
,
1 2 / 3
return [3,2,1]
.
Note: Recursive solution is trivial, could you do it iteratively?
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public List<Integer> postorderTraversal(TreeNode root) { List<Integer> result=null; if(root==null) { result=new LinkedList<Integer>(); return result; } if(root.left==null&&root.right==null) { result=new LinkedList<Integer>(); result.add(root.val); return result; } if(root.left!=null) { result=postorderTraversal(root.left); } if(root.right!=null) { List<Integer> right=postorderTraversal(root.right); if(result==null) { result=right; } else { result.addAll(right); } } result.add(root.val); return result; } }
Binary Tree Postorder Traversal
标签:des style blog color io os java ar strong
原文地址:http://blog.csdn.net/jiewuyou/article/details/39473281