@@ -564,10 +564,10 @@ class Solution:
564564
565565 return False
566566
567- def hasPathSum (self , root : TreeNode, sum : int ) -> bool :
567+ def hasPathSum (self , root : Optional[ TreeNode], targetSum : int ) -> bool :
568568 if root is None :
569569 return False
570- return self .traversal(root, sum - root.val)
570+ return self .traversal(root, targetSum - root.val)
571571```
572572
573573(版本二) 递归 + 精简
@@ -579,12 +579,12 @@ class Solution:
579579# self.left = left
580580# self.right = right
581581class Solution :
582- def hasPathSum (self , root : TreeNode, sum : int ) -> bool :
582+ def hasPathSum (self , root : Optional[ TreeNode], targetSum : int ) -> bool :
583583 if not root:
584584 return False
585- if not root.left and not root.right and sum == root.val:
585+ if not root.left and not root.right and targetSum == root.val:
586586 return True
587- return self .hasPathSum(root.left, sum - root.val) or self .hasPathSum(root.right, sum - root.val)
587+ return self .hasPathSum(root.left, targetSum - root.val) or self .hasPathSum(root.right, targetSum - root.val)
588588
589589```
590590(版本三) 迭代
@@ -596,7 +596,7 @@ class Solution:
596596# self.left = left
597597# self.right = right
598598class Solution :
599- def hasPathSum (self , root : TreeNode, sum : int ) -> bool :
599+ def hasPathSum (self , root : Optional[ TreeNode], targetSum : int ) -> bool :
600600 if not root:
601601 return False
602602 # 此时栈里要放的是pair<节点指针,路径数值>
@@ -659,13 +659,13 @@ class Solution:
659659
660660 return
661661
662- def pathSum (self , root : TreeNode, sum : int ) -> List[List[int ]]:
662+ def pathSum (self , root : Optional[ TreeNode], targetSum : int ) -> List[List[int ]]:
663663 self .result.clear()
664664 self .path.clear()
665665 if not root:
666666 return self .result
667667 self .path.append(root.val) # 把根节点放进路径
668- self .traversal(root, sum - root.val)
668+ self .traversal(root, targetSum - root.val)
669669 return self .result
670670```
671671
@@ -678,7 +678,7 @@ class Solution:
678678# self.left = left
679679# self.right = right
680680class Solution :
681- def pathSum (self , root : TreeNode, targetSum : int ) -> List[List[int ]]:
681+ def pathSum (self , root : Optional[ TreeNode] , targetSum : int ) -> List[List[int ]]:
682682
683683 result = []
684684 self .traversal(root, targetSum, [], result)
@@ -703,7 +703,7 @@ class Solution:
703703# self.left = left
704704# self.right = right
705705class Solution :
706- def pathSum (self , root : TreeNode, targetSum : int ) -> List[List[int ]]:
706+ def pathSum (self , root : Optional[ TreeNode] , targetSum : int ) -> List[List[int ]]:
707707 if not root:
708708 return []
709709 stack = [(root, [root.val])]
0 commit comments