Guest User

Untitled

a guest
Nov 19th, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.67 KB | None | 0 0
  1. # Definition for a binary tree node.
  2. # class TreeNode(object):
  3. # def __init__(self, x):
  4. # self.val = x
  5. # self.left = None
  6. # self.right = None
  7.  
  8. class Solution(object):
  9. def findFrequentTreeSum(self, root):
  10. """
  11. :type root: TreeNode
  12. :rtype: List[int]
  13. """
  14. if not root: return []
  15. freqs = {}
  16. self.sum(root, freqs)
  17. m = max(freqs.values())
  18. return [ k for k, v in freqs.items() if v == m ]
  19.  
  20. def sum(self, root, freqs):
  21. if not root: return 0
  22. sum = root.val + self.sum(root.left, freqs) + self.sum(root.right, freqs)
  23. freqs[sum] = freqs.get(sum, 0) + 1
  24. return sum
Add Comment
Please, Sign In to add comment