给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。叶子节点 是指没有子节点的节点。示例 1:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val = val; * this.left = left; * this.right = right; * } * } */class Solution { List<String> list = new ArrayList(); public List<String> binaryTreePaths(TreeNode root) { backTracking(root,""); return list; } public void backTracking(TreeNode root,String rootStr){ if(root == null) return; rootStr += root.val; if(root.left==null&&root.right==null){ list.add(rootStr); }else{ backTracking(root.left, rootStr+"->"); backTracking(root.right, rootStr+"->"); } }}