Binary Tree Paths
Given a binary tree, return all root-to-leaf paths.
Example
Given the following binary tree:
1
/ 2 3
5
All root-to-leaf paths are:
[
"1->2->5",
"1->3"
]
/** * Definition of TreeNode: * public class TreeNode { * public int val; * public TreeNode left, right; * public TreeNode(int val) { * this.val = val; * this.left = this.right = null; * } * } */ public class Solution { /** * @param root the root of the binary tree * @return all root-to-leaf paths */ List<String> list=new ArrayList<String>(); public List<String> binaryTreePaths(TreeNode root) { // Write your code here if(root!=null) { getPaths(root,String.valueOf(root.val)); } return list; } public void getPaths(TreeNode n, String path) { if(n.left==null && n.right==null) { list.add(path); } if(n.left!=null) { getPaths(n.left,path+"->"+n.left.val); } if(n.right!=null) { getPaths(n.right,path+"->"+n.right.val); } } }
时间: 2024-10-16 13:03:44