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;
    }
};
相关推荐
ximu_polaris12 分钟前
设计模式(C++)-行为型模式-访问者模式
c++·设计模式·访问者模式
血玥珏1 小时前
血玥珏-多WAV/MP3混音合成小工具2.0.0.5
c++·音视频
Shadow(⊙o⊙)1 小时前
初识Qt+经典方式实现hello world!的交互
开发语言·c++·后端·qt·学习
梵尔纳多1 小时前
OpenGL 实例化
c++·图形渲染·opengl
隐士Xbox1 小时前
c++ 指针的用法
开发语言·c++·计算机视觉
m0_629494731 小时前
LeetCode 热题 100-----23.反转链表
数据结构·算法·leetcode·链表
salipopl2 小时前
C++ 面试题:C++中 constexpr 函数的限制有哪些?
c++
无限进步_2 小时前
【C++】从红黑树到 map 和 set:封装设计与迭代器实现
开发语言·数据结构·数据库·c++·windows·github·visual studio
handler012 小时前
速通蓝桥杯省一:二分算法
c语言·开发语言·c++·笔记·算法·职场和发展·蓝桥杯
汉克老师2 小时前
GESP5级C++考试语法知识(十六、分治算法(三))
c++·算法·分治算法·汉诺塔·逆序对·gesp5级·gesp五级