"""
Definition of TreeNode:
class TreeNode:
def __init__(self, val):
self.val = val
self.left, self.right = None, None
"""
class Solution:
"""
@param root: the root of the binary tree
@return: all root-to-leaf paths
"""
def binaryTreePaths(self, root):
# write your code here
if root == None:
return []
nodelist = []
nodelist.append(root)
res = []
res.append(str(root.val))
res2 = []
while len(nodelist) != 0:
root = nodelist.pop(0)
temp = res.pop(0)
if root.left == None and root.right == None:
res2.append(temp)
if root.left:
nodelist.append(root.left)
templ = temp + "->" + str(root.left.val)
res.append(templ)
if root.right:
nodelist.append(root.right)
tempr = temp + "->" + str(root.right.val)
res.append(tempr)
return res2
"""
Definition of TreeNode:
class TreeNode:
def __init__(self, val):
self.val = val
self.left, self.right = None, None
"""
class Solution:
"""
@param root: the root of the binary tree
@return: all root-to-leaf paths
"""
def binaryTreePaths(self, root):
# write your code here
if root == None:
return []
res = []
if root.left == None and root.right == None:
return [str(root.val)]
if root.left:
templ = self.binaryTreePaths(root.left)
resl = [str(root.val) + "->" + templ[i] for i in range(len(templ))]
res += resl
if root.right:
tempr = self.binaryTreePaths(root.right)
resr = [str(root.val) + "->" + tempr[i] for i in range(len(tempr))]
res += resr
return res