![]() |
1
2
这个 应该 做这项工作,但我希望我有一个额外的leetcode帐户来验证。其思想是进行搜索,以找到结构中的最大深度,然后使用您以前的算法,但与深度计算相反。而且,不递归地执行它意味着计时的机会更少,也没有吹堆栈的机会。我添加了一些基本的测试用例,但再次,没有保证。
|
![]() |
2
2
一个基本的递归解决方案,就像你原来的一样
|
![]() |
3
1
如果在遍历期间将每个深度的元素总和存储在数组中,则无需对嵌套数组进行两次遍历即可完成此操作。然后,您知道这个数组的长度是最大深度,您可以将这些和乘以它们的正确权重。
|
![]() |
4
-1
也许你可以用一个简单的递归减速机做如下操作。
好吧,正如评论中提到的,上面的代码更多地考虑了更深层次的元素。为了使浅层的分量更重,我们需要事先知道阵列的深度。我相信这样或那样的话,你最终会遍历数组两次。。。一次用于深度,一次用于计算加权和。
|
![]() |
code-geek · Jquery根据单选按钮选择隐藏或显示文本字段 4 月前 |
![]() |
Alex · 在轻量级中同时解构和不解构变量 4 月前 |
![]() |
Ângelo Rigo · ReactJS映射:如何迭代[关闭] 4 月前 |
![]() |
bairog · 从按属性筛选的对象数组字典中创建值数组 4 月前 |
![]() |
lokiuucx · JS对象属性返回未定义,尽管对象属性应该有值 5 月前 |