题目如下:

Given the root of a binary tree, the level of its root is 1, the level of its children is 2, and so on.

Return the smallest level X such that the sum of all the values of nodes at level X is maximal.

Example 1:

Input: [1,7,0,7,-8,null,null]
Output: 2
Explanation:
Level 1 sum = 1.
Level 2 sum = 7 + 0 = 7.
Level 3 sum = 7 + -8 = -1.
So we return the level with the maximum sum which is level 2.

Note:

  1. The number of nodes in the given tree is between 1 and 10^4.
  2. -10^5 <= node.val <= 10^5

解题思路:没什么好说的,依次计算出每一层的值,求出最大即可。

代码如下:

# Definition for a binary tree node.
# class TreeNode(object):
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None class Solution(object):
dic = {}
def recursive(self,node,level):
self.dic[level] = self.dic.setdefault(level,0) + node.val
if node.left != None:
self.recursive(node.left,level+1)
if node.right != None:
self.recursive(node.right,level+1) def maxLevelSum(self, root):
"""
:type root: TreeNode
:rtype: int
"""
self.dic = {}
self.recursive(root,1)
max_val = 0
res = 0
for key,val in self.dic.iteritems():
if max_val < val:
max_val = val
res = key
return res

最新文章

  1. 三、oracle数据库成功安装步骤 Oracle数据源配置
  2. 把内容生成txt文件
  3. 在OSX下卸载Xamarin
  4. JTAG和SWD连接关系图
  5. SSH自定义分页标签
  6. 使用pycharm远程调试python代码
  7. [转]50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs
  8. Linux下的”锁“事儿
  9. 合并大量txt文件的内容
  10. 关于ssh的一篇很好的文章
  11. pyramid的第一个项目
  12. nodejs and socket.io and iisnode
  13. js设置元素的onclick传参方法
  14. 使用PHP把下划线分隔命名的字符串 转换成驼峰式命名方式 , 把下划线后面的第一个字母变成大写
  15. ios中mvc的FormsAuthentication.SetAuthCookie(cookieUserName, false)失败
  16. Swift 2.0 字符串学习笔记(建议掌握OC字符串知识的翻阅)
  17. MAC上安装EndNote破解版的链接文件 以及某些安装好后有可能替换执照文件的方法
  18. Jade报错:Invalid indentation,you can use tabs or spaces but not both问题
  19. 关于MySQL的1064错误
  20. css垂直居中方法总结

热门文章

  1. 码云 git 命令提交
  2. DedeCMS系统设置说明:站点设置
  3. IDEA给类和方法配置注释模板(参数换行显示)
  4. Spring MVC的RequestContextHolder使用误区
  5. 社工 - By浏览器 - Google搜索技巧 - 汇总
  6. (一)VS2015下配置OpenGL
  7. Charles抓包过滤的四种方式
  8. 20191127 Spring Boot官方文档学习(4.13)
  9. Dapper基本使用
  10. centos6.9 安装mysql8