关键是第三点:不能有长度大于2的包含公共元素的子串重复那就要检查3字符的子串,是否有重复的子串,以第一个字母开头的子串包含了以第二个字母开头的子串。怎么一个for循环就可以获取子串吗? 至少得一个for获取子串起始位置,一个for获取子串结束位置吧。其实我们只需要判断,以第一个字母为开始的子串就可以,所以一个for循环获取子串的终止位置就行了。 import java.util.HashSet; import java.util.Scanner; import java.util.Set; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class ...