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;
    }
};
相关推荐
曼巴UE5几秒前
UE 客户端 需要的网络同步概念总结
网络·c++·ue5
云深麋鹿13 分钟前
C++ | 继承
开发语言·c++
小辉同志17 分钟前
Epoll+线程池
开发语言·c++·c·线程池·epoll
史迪仔011218 分钟前
[QML] Qt Quick Dialogs 模块使用指南
开发语言·前端·c++·qt
Chase_______18 分钟前
LeetCode 1456:定长子串中元音的最大数目
算法·leetcode
谭欣辰18 分钟前
Floyd算法:动态规划解最短路径
c++·算法·图论
6Hzlia22 分钟前
【Hot 100 刷题计划】 LeetCode 84. 柱状图中最大的矩形 | C++ 两次单调栈基础扫法
c++·算法·leetcode
小苗卷不动28 分钟前
OJ刷题之栈和排序(中等)
c++
沫璃染墨30 分钟前
重生之我要手写 C++ list:从底层结构到 const 迭代器与迭代器失效全解
开发语言·c++
paeamecium34 分钟前
【PAT甲级真题】- Favorite Color Stripe (30)
数据结构·c++·算法·pat