Code & Func
2020-01-31

第62天。

今天的题目是Deepest Leaves Sum:

比较简单的题目,只要用层次遍历即可,计算每一层的和,然后把最后一层返回即可。也可以用后序遍历来完成,不过要维护每个子树的高度。

1
int deepestLeavesSum(TreeNode* root) {
2
if (root == nullptr) return 0;
3
queue<TreeNode *> q;
4
q.push(root);
5
int sum = 0;
6
while(!q.empty()) {
7
sum = 0;
8
for(int i = 0, size = q.size(); i < size; i++) {
9
root = q.front(); q.pop();
10
sum += root->val;
11
if (root->left) q.push(root->left);
12
if (root->right) q.push(root->right);
13
}
14
}
15
return sum;
1 collapsed line
16
}
上一条动态