1.*这个问题有点像小学课本上握手问题,每个人都握到最后那个人,这样也就好理解点了
2.*我们可以通过循环加上字符串拼接每次加一个字母,然后存储到数组中,好比:a,a+b,a+b+c,a+b+c+d等等,到了b就清空继续这个操作
*3.*这样一看我们可以采用双重for循环一个负责首字母一个负责后续的拼接
public class ABC {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
for (char i = 'a'; i <= 'z'; i++) {
//清空
String st = "";
for (char j = i; j <= 'z'; j++) {
//拼接
st += j;
//存储
list.add(st);
}
}
//遍历出来所有的组合
for (String string : list) {
System.out.println(string);
}
}
}
D:\develop\JDK1.8\jdk1.8.0_281\bin\java.exe "-javaagent:D:\develop\IntelliJ IDEA 2020.3.2\lib\idea_rt.jar=6168:D:\develop\IntelliJ