C++ | Leetcode C++题解之第404题左叶子之和

题目:

题解:

cpp 复制代码
class Solution {
public:
    bool isLeafNode(TreeNode* node) {
        return !node->left && !node->right;
    }

    int sumOfLeftLeaves(TreeNode* root) {
        if (!root) {
            return 0;
        }

        queue<TreeNode*> q;
        q.push(root);
        int ans = 0;
        while (!q.empty()) {
            TreeNode* node = q.front();
            q.pop();
            if (node->left) {
                if (isLeafNode(node->left)) {
                    ans += node->left->val;
                }
                else {
                    q.push(node->left);
                }
            }
            if (node->right) {
                if (!isLeafNode(node->right)) {
                    q.push(node->right);
                }
            }
        }
        return ans;
    }
};
相关推荐
TTTrees4 分钟前
C++学习笔记(38):封装、继承、多态
c++
6Hzlia11 分钟前
【Hot 100 刷题计划】 LeetCode 54. 螺旋矩阵 | C++ 模拟法题解
c++·leetcode·矩阵
float_com24 分钟前
LeetCode 88. 合并两个有序数组
leetcode
水蓝烟雨24 分钟前
LeetCode刷题笔记:合并两个有序链表(0021)
笔记·leetcode·链表
梓䈑27 分钟前
Gflags解剖课:从DEFINE宏到命令行解析的工程化实践
c++·gflags
Tanecious.38 分钟前
蓝桥杯备赛:Day8-小红杀怪
c++·蓝桥杯
wregjru1 小时前
【高并发服务器项目】2.服务器业务层设计详解
c++
生信研究猿1 小时前
leetcode 101.对称二叉树(不会做)
算法·leetcode·职场和发展
样例过了就是过了1 小时前
LeetCode热题100 跳跃游戏 II
c++·算法·leetcode·贪心算法·动态规划
香蕉鼠片1 小时前
第三大的数
数据结构·算法·leetcode