Problem
Given a binary tree containing digits from
0-9 only, each root-to-leaf path could represent a number.
An example is the root-to-leaf path
1->2->3 which represents the number 123.
Find the total sum of all root-to-leaf numbers.
For example,
1 / \ 2 3
The root-to-leaf path
The root-to-leaf path
1->2 represents the number 12.The root-to-leaf path
1->3 represents the number 13.
Return the sum = 12 + 13 =
25.Algorithm
Let pathNumber be a number represented by the path from root to current node. Since this node's value is the new least significant digit of this number
pathNumber = pathNumber*10 + cur.val.
If current node is a leaf node, pathNumber is a root-to-leaf number. Adding all these root-to-leaf numbers, we get the final result.
No comments:
Post a Comment