Day 82 of 100 Days LeetCode Challenge

LeetCode Challenge #257. Binary Tree Paths

Given the root of a binary tree, return all root-to-leaf paths in any order.

leaf is a node with no children.

 

Example 1:

paths tree

Input: root = [1,2,3,null,5]
Output: ["1->2->5","1->3"]

Example 2:

Input: root = [1]
Output: ["1"]

 

Constraints:

  • The number of nodes in the tree is in the range [1, 100].
  • -100 <= Node.val <= 100
Video Solution
Java Solution
				
					class Solution {
    public List<String> binaryTreePaths(TreeNode root) {
        List<String> ans = new ArrayList<>();
        if(root==null){
            return ans ;
        }else if ( root.left == null && root.right == null){
            ans.add("" + root.val);
            return ans ;
        }

        List<String> leftAns = binaryTreePaths( root.left ) ;
         List<String> rightAns = binaryTreePaths( root.right ) ;

         for(String str : leftAns){
             ans.add(root.val + "->" + str);
         }
          for(String str : rightAns){
             ans.add(root.val + "->" + str);
         }

         return ans ;
    }
}
				
			

Happy Coding with edSlash