层数最深叶子节点的和:返回最后一层的和
目录
题目
思路
总结:
- 使用层次遍历
- 最后一层,计算和即可
- ==记得每一层记得都需要重置为 0==
var deepestLeavesSum = function (root) {
if (root === null) return 0;
const q = [];
q.push(root);
let sum = 0;
while (q.length > 0) {
// 每一层记得都需要重置为 0
sum = 0;
const sz = q.length;
for (let i = 0; i < sz; i++) {
const cur = q.shift();
// 累加一层的节点之和
sum += cur.val;
if (cur.left !== null) q.push(cur.left);
if (cur.right !== null) q.push(cur.right);
}
}
// 现在就是最后一层的节点值和
return sum;
};