Leetcode—112.路径总和【简单】

2023每日刷题(五十七)

Leetcode---112.路径总和

实现代码

cpp 复制代码
/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
 * };
 */
class Solution {
public:
    bool dfs(TreeNode* root, int sum) {
        if(root == nullptr) {
            return false;
        }
        if(root->left == nullptr && root->right == nullptr) {
            return sum == root->val;
        }
        return dfs(root->left, sum - root->val) || dfs(root->right, sum - root->val);
    }

    bool hasPathSum(TreeNode* root, int targetSum) {
        return dfs(root, targetSum);
    }
};

算法思想

运行结果


之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
严文文-Chris3 分钟前
【半监督学习常见算法】
学习·算法·机器学习
FPGA_无线通信12 分钟前
OFDM 同步设计(3)
算法·fpga开发
SHOJYS18 分钟前
离散化+二位前缀和的计数题 [USACO20DEC] Rectangular Pasture S
算法
java修仙传25 分钟前
力扣hot100:最大子数组和
数据结构·算法·leetcode
狮子座的男孩26 分钟前
js函数高级:06、详解闭包(引入闭包、理解闭包、常见闭包、闭包作用、闭包生命周期、闭包应用、闭包缺点及解决方案)及相关面试题
前端·javascript·经验分享·闭包理解·常见闭包·闭包作用·闭包生命周期
white-persist31 分钟前
【攻防世界】reverse | Mysterious 详细题解 WP
c语言·开发语言·网络·汇编·c++·python·安全
赖small强32 分钟前
【Linux C/C++ 开发】 GCC 编译过程深度解析指南
linux·c语言·c++·预处理·链接·编译·编译过程
BestOrNothing_201532 分钟前
C++ 并发四件套:并发编程 / 原子性 / 数据竞争 / 内存模型 (全解析)
c++·多线程·并发编程·线程安全·内存模型·原子操作·数据竞争
想唱rap36 分钟前
C++之unordered_set和unordered_map
c++·算法·哈希算法
Rock_yzh40 分钟前
LeetCode算法刷题——54. 螺旋矩阵
数据结构·c++·学习·算法·leetcode·职场和发展·矩阵