news 2026/4/16 15:01:58

树的练习3--------1022从根到叶的二进制数之和

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
树的练习3--------1022从根到叶的二进制数之和

前言

前面做了一道题目,感觉已经摸到递归大道的门把手了,现在做这个题还是有点模糊,知道怎么去做,但是不知道怎么去实现,现在看完题解以后,又对递归多了一点理解。

题目:点这里

解法

/** * 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 { int sum; void sumRoot(TreeNode* root,int pro){ if(root->left==nullptr&&root->right==nullptr){ sum+=pro*2+root->val; }//递归出口 if(root->left!=nullptr){ sumRoot(root->left,pro*2+root->val); } if(root->right!=nullptr){ sumRoot(root->right,pro*2+root->val); } } public: int sumRootToLeaf(TreeNode* root) { sum=0; sumRoot(root,0); return sum; } };

这个题目的思路就是利用前缀值pro和总值sum配合来求咱们的最终结果,具体过程就是将一条路线从头加到尾,然后回到上一层函数,选择不同子节点,再得到另外的结果,所有的结果加在一起就是最终结果。实现逻辑还是很清晰的,首先递归出口就是当当前根节点是叶子节点时,让sum加上pro×2在加上当前节点的值。然后递归内部 呢,就是利用两个if语句,要么往左走,要么往右走,组成所有可能的组合,得到我们想要的数。

反思

如果想从后往前(从里往外)传递值,就需要利用return;

如果想从前往后(从外往里)传递值,就需要将待传的值放在函数的参数列表上。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/12 1:35:32

救命神器2026最新!8款AI论文平台测评:本科生毕业论文全攻略

救命神器2026最新!8款AI论文平台测评:本科生毕业论文全攻略 2026年AI论文平台测评:为什么你需要这份榜单? 随着人工智能技术的不断进步,越来越多的本科生开始依赖AI工具辅助毕业论文写作。然而,面对市场上琳…

作者头像 李华
网站建设 2026/4/16 12:57:24

显卡市场四强格局解析:技术革新驱动品牌竞争新阶段

2025年显卡市场最新数据显示,一线品牌华硕、技嘉、微星、七彩虹占据中国市场出货量前四位,形成稳定的行业领先阵营,共同引领技术创新与市场发展方向。随着新一代GPU产品的陆续上市,全球独立显卡市场在2025年上半年呈现出显著增长。…

作者头像 李华
网站建设 2026/4/16 14:50:31

必藏!让Agent真正“能干活“的Agent Skills全解析,从入门到实战

文章介绍了Agent Skills,一套让AI Agent专业"做事"的标准化技能说明书。它不同于一次性使用的Prompt和解决"能做什么"的Tool/MCP,而是提供长期、稳定、可复用的"做事方法论"。文章详细讲解了Agent Skills的结构、配置方法…

作者头像 李华
网站建设 2026/4/16 1:53:23

软件配置管理(SCM)的核心 作用:控制软件开发过程中的变更,防止未经授权的修改,减少混乱与错误,提升团队协作效率和产品质量

一、软件配置管理(SCM)的核心 作用:控制软件开发过程中的变更,防止未经授权的修改,减少混乱与错误,提升团队协作效率和产品质量。 目标:准确标识变更、有效控制变更流程、确保变更被正确实施与验…

作者头像 李华