1353. 根节点到叶节点求和
作者:互联网
1353. 根节点到叶节点求和
给定仅包含来自0-9的数字的二叉树,每个根到叶路径可以表示数字。举个例子:root-to-leaf路径1-> 2-> 3,它代表数字123,找到所有根到叶的数的总和样例
样例1 输入: {1,2,3} 输出: 25 解释: 1 / \ 2 3 路径 1->2 表示数字 12. 路径 1->3 表示数字 13. 因此, sum = 12 + 13 = 25. 样例2 输入: {4,9,0,5,1} 输出: 1026 解释: 4 / \ 9 0 / \ 5 1 路径 4->9->5 表示数字 495. 路径 4->9->1 表示数字 491. 路径 4->0 表示数字 40. 因此, sum = 495 + 491 + 40 = 1026.注意事项
叶节点是没有子节点的节点 /** * Definition of TreeNode: * public class TreeNode { * public int val; * public TreeNode left, right; * public TreeNode(int val) { * this.val = val; * this.left = this.right = null; * } * } */ public class Solution { /** * @param root: the root of the tree * @return: the total sum of all root-to-leaf numbers */ public int sumNumbers(TreeNode root) { if (root == null) { return 0; } return sumNumbers(root, 0); } private int sumNumbers(TreeNode root, int val) { val = val * 10 + root.val; if (root.left != null && root.right != null) { return sumNumbers(root.left, val) + sumNumbers(root.right, val); } else if (root.left != null) { return sumNumbers(root.left, val); } else if (root.right != null) { return sumNumbers(root.right, val); } else { return val; } } }标签:right,return,val,1353,求和,sumNumbers,null,root,节点 来源: https://blog.csdn.net/xwdrhgr/article/details/117918599