All subsets I
_
A _
AB A B _
ABC AB AC A BC B C _Last updated
_
A _
AB A B _
ABC AB AC A BC B C _Last updated
public void findSubsets(String set){
if (set == null) return;
StringBuilder sb = new StringBuilder(); //no offense chinese readers
char[] input = set.toCharArray();
subsetHelper(input, 0, sb);
}
public void subsetHelper(char[] input, int index, StringBuilder sb){
if (index == input.length){
System.out.println(sb);
return;
}
//add
sb.append(input[index]);
//call next element
subsetHelper(input, index + 1, sb);
//Delete previous
sb.deleteCharAt(sb.length() - 1);
//Branch right
subsetHelper(input, index + 1, sb);
}