logologo

打印一个字符串的全部子序列

Oct 18, 2023

打印一个字符串的全部子序列

public static List<String> subs(String s) {
  char[] str = s.toCharArray();
  String path = "";
  List<String> ans = new ArrayList<>();
  process1(str, 0, ans, path);
  return ans;
}

public static void process1(char[] str, int index, List<String> ans, String path) {
  if (index == str.length) {
    ans.add(path);
    return;
  }
  process1(str, index + 1, ans, path); // 没要 str[index]的字符
  process1(str, index + 1, ans, path + String.valueOf(str[index])); // 要是 str[index]的字符
}

C++Java
浙ICP备2021022773号    2022-PRESENT © ZhengKe