Skip to content

Commit 57af2b4

Browse files
Sean PrashadSean Prashad
authored andcommitted
Update 337_House_Robber_III.java
1 parent 5a0fe2a commit 57af2b4

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed
Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,30 @@
1-
class Solution {
1+
sclass Solution {
22
public int rob(TreeNode root) {
3-
return helper(root, new HashMap<TreeNode, Integer>());
3+
Map<TreeNode, Integer> memo = new HashMap<>();
4+
return robHelper(root, memo);
45
}
56

6-
private int helper(TreeNode root, Map<TreeNode, Integer> m) {
7+
private int robHelper(TreeNode root, Map<TreeNode, Integer> memo) {
78
if (root == null) {
89
return 0;
910
}
10-
if (m.containsKey(root)) {
11-
return m.get(root);
11+
if (memo.containsKey(root)) {
12+
return memo.get(root);
1213
}
1314

14-
int result = 0;
15+
int sum = 0;
1516

1617
if (root.left != null) {
17-
result += helper(root.left.left, m) + helper(root.left.right, m);
18+
sum += robHelper(root.left.left, memo) + robHelper(root.left.right, memo);
1819
}
1920

2021
if (root.right != null) {
21-
result += helper(root.right.left, m) + helper(root.right.right, m);
22+
sum += robHelper(root.right.left, memo) + robHelper(root.right.right, memo);
2223
}
2324

24-
result = Math.max(result + root.val, helper(root.left, m) + helper(root.right, m));
25-
m.put(root, result);
26-
return result;
25+
sum = Math.max(sum + root.val, robHelper(root.left, memo) + robHelper(root.right, memo));
26+
27+
memo.put(root, sum);
28+
return sum;
2729
}
2830
}

0 commit comments

Comments
 (0)