Skip to content

Commit 9975940

Browse files
refactor 339
1 parent 03957d2 commit 9975940

File tree

1 file changed

+25
-41
lines changed
  • src/main/java/com/fishercoder/solutions

1 file changed

+25
-41
lines changed

src/main/java/com/fishercoder/solutions/_339.java

+25-41
Original file line numberDiff line numberDiff line change
@@ -4,53 +4,37 @@
44

55
import java.util.List;
66

7-
/**
8-
* 339. Nested List Weight Sum
9-
*
10-
* Given a nested list of integers, return the sum of all integers in the list weighted by their depth.
11-
* Each element is either an integer, or a list -- whose elements may also be integers or other lists.
12-
*
13-
* Example 1:
14-
* Input: [[1,1],2,[1,1]]
15-
* Output: 10
16-
* Explanation: Four 1's at depth 2, one 2 at depth 1.
17-
*
18-
* Example 2:
19-
* Input: [1,[4,[6]]]
20-
* Output: 27
21-
* Explanation: One 1 at depth 1, one 4 at depth 2, and one 6 at depth 3; 1 + 4*2 + 6*3 = 27.
22-
* */
237
public class _339 {
24-
public static class Solution1 {
25-
private int sum = 0;
8+
public static class Solution1 {
9+
private int sum = 0;
2610

27-
public int depthSum(List<NestedInteger> nestedList) {
28-
return dfs(nestedList, 1);
29-
}
11+
public int depthSum(List<NestedInteger> nestedList) {
12+
return dfs(nestedList, 1);
13+
}
3014

31-
private int dfs(List<NestedInteger> nestedList, int depth) {
32-
for (NestedInteger ni : nestedList) {
33-
if (ni.isInteger()) {
34-
sum += depth * ni.getInteger();
35-
} else {
36-
dfs(ni.getList(), depth + 1);
15+
private int dfs(List<NestedInteger> nestedList, int depth) {
16+
for (NestedInteger ni : nestedList) {
17+
if (ni.isInteger()) {
18+
sum += depth * ni.getInteger();
19+
} else {
20+
dfs(ni.getList(), depth + 1);
21+
}
22+
}
23+
return sum;
3724
}
38-
}
39-
return sum;
4025
}
41-
}
4226

43-
public static class Solution2 {
44-
public int depthSum(List<NestedInteger> nestedList) {
45-
return dfs(nestedList, 1);
46-
}
27+
public static class Solution2 {
28+
public int depthSum(List<NestedInteger> nestedList) {
29+
return dfs(nestedList, 1);
30+
}
4731

48-
private int dfs(List<NestedInteger> nestedList, int depth) {
49-
int sum = 0;
50-
for (NestedInteger ni : nestedList) {
51-
sum += ni.isInteger() ? depth * ni.getInteger() : dfs(ni.getList(), depth + 1);
52-
}
53-
return sum;
32+
private int dfs(List<NestedInteger> nestedList, int depth) {
33+
int sum = 0;
34+
for (NestedInteger ni : nestedList) {
35+
sum += ni.isInteger() ? depth * ni.getInteger() : dfs(ni.getList(), depth + 1);
36+
}
37+
return sum;
38+
}
5439
}
55-
}
5640
}

0 commit comments

Comments
 (0)