Most Frequent Subtree Sum LeetCode solution in Python
1# Definition for a binary tree node.2# class TreeNode:3# def __init__(self, val=0, left=None, right=None):4# self.val = val5# self.left = left6# self.right = right7class Solution:8def findFrequentTreeSum(self, root: Optional[TreeNode]) -> List[int]:9def dfs(root):1011if not root:12return 01314l = dfs(root.left)15r = dfs(root.right)16res = root.val + l + r1718d[res] += 119return res2021d = collections.Counter()22dfs(root)23maxi = max(d.values())24return [i for i in d if d[i] == maxi]252627# An Upvote will be encouraging