我需要帮助在java中创建一个程序,该程序将使用字母串输入(无空格),然后输出不同子串的数量。
示例输出:
*输入要测试的字符串:abc - “abc”有7个不同的子串。
要测试的输入字符串:aaa - “aaa”有4个不同的子串。*
我完全迷失了,任何帮助都会受到赞赏。谢谢。
答案 0 :(得分:0)
由于这是作业,这里有一个指南。
答案 1 :(得分:0)
这是一个快速的Java解决方案
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
combination("abc");
System.out.println(set.size());
}
public static HashSet<String> set = new HashSet<>();
public static void combination(String s) {
combination("", s);
}
private static void combination(String prefix, String s) {
if (s.length() > 0) {
String str = prefix + s.charAt(0); // print here if you want
set.add(str);
combination(prefix + s.charAt(0), s.substring(1));
combination(prefix, s.substring(1));
}
}
}