leetcode:Populating Next Right Pointers in Each Node
2015-04-08 00:55
351 查看
一道DFS的题目,题意如下:
Given a binary tree containing digits from
a number.
An example is the root-to-leaf path
Find the total sum of all root-to-leaf numbers.
For example,
The root-to-leaf path
The root-to-leaf path
Return the sum = 12 + 13 =
思路:其实类似于打印所有的路径,只是多了一步求和的步骤
代码如下:
Given a binary tree containing digits from
0-9only, each root-to-leaf path could represent
a number.
An example is the root-to-leaf path
1->2->3which represents the number
123.
Find the total sum of all root-to-leaf numbers.
For example,
1 / \ 2 3
The root-to-leaf path
1->2represents the number
12.
The root-to-leaf path
1->3represents the number
13.
Return the sum = 12 + 13 =
25.
思路:其实类似于打印所有的路径,只是多了一步求和的步骤
代码如下:
static int sum; static StringBuffer sb; public static int sumNumbers(TreeNode root) { if(root == null)return 0; sb = new StringBuffer(); sum = 0; s(root); return sum; } static void s(TreeNode root){ if(root == null){ return; }else if(root.left == null && root.right == null){ sb.append(root.val); sum += Integer.parseInt(sb.toString()); sb.deleteCharAt(sb.length()-1); return ; } sb.append(root.val); s(root.left); s(root.right); sb.deleteCharAt(sb.length()-1); return; }一开始比较粗心,没有在非叶子节点return的时候删掉当前值,导致溢出了,所以最后两句很重要~
相关文章推荐
- [LeetCode] Populating Next Right Pointers in Each Node
- [Leetcode] Populating Next Right Pointers in Each Node
- [Leetcode] Populating Next Right Pointers in Each Node ii
- LeetCode: Populating Next Right Pointers in Each Node
- 【leetcode】Populating Next Right Pointers in Each Node II
- LeetCode Populating Next Right Pointers in Each Node
- LeetCode - Populating Next Right Pointers in Each Node
- Leetcode: Populating Next Right Pointers in Each Node
- leetcode 79: Populating Next Right Pointers in Each Node II
- LeetCode: Populating Next Right Pointers in Each Node
- [LeetCode] Populating Next Right Pointers in Each Node
- LeetCode(Oct28'12):Populating Next Right Pointers in Each Node II
- [LeetCode]Populating Next Right Pointers in Each Node
- leetcode 78: Populating Next Right Pointers in Each Node
- [LeetCode] Populating Next Right Pointers in Each Node II
- [LeetCode] Populating Next Right Pointers in Each Node II 解题报告
- 【leetcode】 Populating Next Right Pointers in Each Node
- leetcode Populating Next Right Pointers in Each Node II
- [Leetcode]Populating Next Right Pointers in Each Node II
- leetcode 79: Populating Next Right Pointers in Each Node II