Skip to content

Commit 61a81c9

Browse files
authored
Update GenerateSubsets.java
1 parent 5043123 commit 61a81c9

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

src/main/java/com/thealgorithms/Recursion/GenerateSubsets.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,17 @@
55
import java.util.ArrayList;
66
import java.util.List;
77

8-
public final class GenerateSubsets {
8+
public class GenerateSubsets {
99

1010
private GenerateSubsets() {
1111
throw new UnsupportedOperationException("Utility class");
1212
}
1313

14-
public static List<String> subsetRecursion(String p, String up) {
14+
public static List<String> subsetRecursion(String str) {
15+
return doRecursion("", str);
16+
}
17+
18+
private static List<String> doRecursion(String p, String up) {
1519
if (up.isEmpty()) {
1620
List<String> list = new ArrayList<>();
1721
list.add(p);
@@ -21,9 +25,9 @@ public static List<String> subsetRecursion(String p, String up) {
2125
// Taking the character
2226
char ch = up.charAt(0);
2327
// Adding the character in the recursion
24-
List<String> left = subsetRecursion(p + ch, up.substring(1));
28+
List<String> left = doRecursion(p + ch, up.substring(1));
2529
// Not adding the character in the recursion
26-
List<String> right = subsetRecursion(p, up.substring(1));
30+
List<String> right = doRecursion(p, up.substring(1));
2731

2832
left.addAll(right);
2933

0 commit comments

Comments
 (0)