推 Meaverzt: 大師 10/22 09:25
理論上好像應該BFS+size k的minheap
但我覽
對不起
反正差不多
def kthLargestLevelSum(self, root: Optional[TreeNode], k: int) -> int:
mp = defaultdict(int)
def dfs(root, level):
if root is None:
return
mp[level] += root.val
dfs(root.left, level+1)
dfs(root.right, level+1)
dfs(root,0)
l = []
for _,v in mp.items():
l.append(v)
l.sort()
return -1 if k>len(l) else l[-k]
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.229.37.69 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1729558176.A.96F.html