leetcode 129 求根节点到叶节点数字之和

一、题目描述

二、解题思路

可以采用递归的思想来解决这个问题。

三、代码实现

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:
    int sumNumbers(TreeNode* root) {
        return dfs(root,0);
    }

    int dfs(TreeNode* root,int presum){
        presum=presum*10+root->val;
        //递归出口(叶子结点)
        if(root->left==nullptr&&root->right==nullptr) return presum;
        int ret=0;
        //处理左子树
        if(root->left) ret+=dfs(root->left,presum);
        //处理右子树
        if(root->right) ret+=dfs(root->right,presum);
        return ret;
    }
};
相关推荐
LeicyII3 小时前
9.B树和B+树的区别【面试题】
数据结构·b树
椎名ひる3 小时前
7.4 B树、B+树
数据结构·b树
DuHz3 小时前
Stable Video Diffusion:将潜在视频扩散模型扩展到大规模数据集——论文阅读
论文阅读·人工智能·深度学习·神经网络·算法·音视频
彩云回4 小时前
决策树(Decision Tree)
算法·决策树·机器学习
徽先生4 小时前
vscode中编写c++程序
c++·ide·vscode
铭哥的编程日记5 小时前
C++优选算法精选100道编程题(附有图解和源码)
开发语言·c++·算法
深思慎考8 小时前
LinuxC++项目开发日志——基于正倒排索引的boost搜索引擎(2——Parser解析html模块)
linux·c++·搜索引擎
不枯石8 小时前
Matlab通过GUI实现点云的最远点下采样(Farthest point sampling)
开发语言·图像处理·算法·计算机视觉·matlab
-Aerolite-9 小时前
【C/C++】C/C++状态机实现方法
c语言·c++