1212 # 7
1313# should return 4.
1414
15+ from tree .tree import TreeNode
1516
16- class Node :
17- def __init__ (self , val = None ):
18- self .left = None
19- self .right = None
20- self .val = val
2117
2218class DeepestLeft :
2319 def __init__ (self ):
2420 self .depth = 0
2521 self .Node = None
2622
23+
2724def find_deepest_left (root , is_left , depth , res ):
2825 if not root :
2926 return
@@ -33,15 +30,17 @@ def find_deepest_left(root, is_left, depth, res):
3330 find_deepest_left (root .left , True , depth + 1 , res )
3431 find_deepest_left (root .right , False , depth + 1 , res )
3532
36- root = Node (1 )
37- root .left = Node (2 )
38- root .right = Node (3 )
39- root .left .left = Node (4 )
40- root .left .right = Node (5 )
41- root .right .right = Node (6 )
42- root .right .right .right = Node (7 )
43-
44- res = DeepestLeft ()
45- find_deepest_left (root , True , 1 , res )
46- if res .Node :
47- print (res .Node .val )
33+
34+ if __name__ == '__main__' :
35+ root = TreeNode (1 )
36+ root .left = TreeNode (2 )
37+ root .right = TreeNode (3 )
38+ root .left .left = TreeNode (4 )
39+ root .left .right = TreeNode (5 )
40+ root .right .right = TreeNode (6 )
41+ root .right .right .right = TreeNode (7 )
42+
43+ res = DeepestLeft ()
44+ find_deepest_left (root , True , 1 , res )
45+ if res .Node :
46+ print (res .Node .val )
0 commit comments