mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 08:50:15 +08:00
添加 0129.求根到叶子节点数字之和.md C语言解法
This commit is contained in:
@ -289,7 +289,33 @@ var sumNumbers = function(root) {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
C:
|
||||||
|
```c
|
||||||
|
//sum记录总和
|
||||||
|
int sum;
|
||||||
|
void traverse(struct TreeNode *node, int val) {
|
||||||
|
//更新val为根节点到当前节点的和
|
||||||
|
val = val * 10 + node->val;
|
||||||
|
//若当前节点为叶子节点,记录val
|
||||||
|
if(!node->left && !node->right) {
|
||||||
|
sum+=val;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
//若有左/右节点,遍历左/右节点
|
||||||
|
if(node->left)
|
||||||
|
traverse(node->left, val);
|
||||||
|
if(node->right)
|
||||||
|
traverse(node->right, val);
|
||||||
|
}
|
||||||
|
|
||||||
|
int sumNumbers(struct TreeNode* root){
|
||||||
|
sum = 0;
|
||||||
|
|
||||||
|
traverse(root, 0);
|
||||||
|
|
||||||
|
return sum;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||||
|
Reference in New Issue
Block a user