当前位置: 首页 > article >正文

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

题目:

题解:

bool isLeafNode(struct TreeNode *node) {
    return !node->left && !node->right;
}

int sumOfLeftLeaves(struct TreeNode *root) {
    if (!root) {
        return 0;
    }
    struct TreeNode **q = malloc(sizeof(struct TreeNode *) * 2001);
    int left = 0, right = 0;
    q[right++] = root;
    int ans = 0;
    while (left < right) {
        struct TreeNode *node = q[left++];
        if (node->left) {
            if (isLeafNode(node->left)) {
                ans += node->left->val;
            } else {
                q[right++] = node->left;
            }
        }
        if (node->right) {
            if (!isLeafNode(node->right)) {
                q[right++] = node->right;
            }
        }
    }
    return ans;
}

http://www.kler.cn/news/303418.html

相关文章:

  • shell脚本语法
  • ASP.NET MVC 迅速集成 SignalR
  • 【spring】IDEA 新建一个spring boot 项目
  • 【无人机设计与控制】旋转无人机摆锤的SDRE仿真
  • VSCode 编写 vue 项目之一键生成 .vue 页面模版
  • 计算机网络:概述 - 性能指标
  • 【Linux 从基础到进阶】Docker Compose 编排工具使用
  • CategoriesController
  • 什么是图像的边缘?说说边缘检测的任务以及基本原理?
  • 无人机应用新纪元:图形工作站配置推荐与硬件解析
  • 网络安全-dom破坏结合jq漏洞以及框架漏洞造成的xss-World War 3
  • Python | Leetcode Python题解之第402题移掉K位数字
  • labview禁用8080端口
  • 合宙低功耗4G模组Air780EX——硬件设计手册01
  • 同步和异步是两种不同的程序执行方式
  • duckdb 连接postgres 和 jdbc 的使用
  • Prism 教程
  • Java集合框架(Collections Framework)入门
  • Compose Multiplatform+kotlin Multiplatfrom第三弹
  • 车辆检测与分类系统源码分享
  • [图论]街道赛跑
  • 【EI会议征稿通知】第四届材料工程与应用力学国际学术会议(ICMEAAE 2025)
  • Spring下载文件
  • 《征服数据结构》滚动数组
  • uni-app生命周期(三)
  • 基于vue框架的城市网约车管理系统v34td(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • 民间故事推广系统小程序的设计
  • PMP--一模--解题--41-50
  • 初级练习[3]:Hive SQL子查询应用
  • 其它查询优化策略