Skip to content

Commit c029de1

Browse files
authored
Update Subsets.java
1 parent a512165 commit c029de1

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

Medium/Subsets.java

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
class Solution {
22
public List<List<Integer>> subsets(int[] nums) {
3-
List<List<Integer>> list = new ArrayList<>();
4-
helper(nums, list, new ArrayList<>(), 0);
5-
return list;
3+
List<List<Integer>> result = new ArrayList<>();
4+
helper(nums, 0, new ArrayList<>(), result);
5+
return new ArrayList<>(result);
66
}
7-
8-
private void helper(int[] nums, List<List<Integer>> list, List<Integer> curr, int idx) {
9-
list.add(new ArrayList<>(curr));
10-
if (idx >= nums.length) {
7+
8+
private void helper(int[] nums, int currIdx, List<Integer> currSubset,
9+
List<List<Integer>> result) {
10+
result.add(new ArrayList<>(currSubset));
11+
if (currIdx >= nums.length) {
1112
return;
1213
}
13-
for (int i = idx; i < nums.length; i++) {
14-
curr.add(nums[i]);
15-
helper(nums, list, curr, i + 1);
16-
curr.remove(curr.size() - 1);
14+
for (int i = currIdx; i < nums.length; i++) {
15+
currSubset.add(nums[i]);
16+
helper(nums, i + 1, currSubset, result);
17+
currSubset.remove(currSubset.size() - 1);
1718
}
1819
}
1920
}

0 commit comments

Comments
 (0)