java - 使用递归生成所有字母组合的算法

标签 java

我记得它有一个特定的名称,并且各个网站上都有示例代码 - 但我不记得它实际上叫什么,所以找不到任何东西......

基本上,我想在循环中生成所有可能的字母组合。输出将是这样的:

A
B
C
...
Z
AA
AB
AC
---
AZ
BA
BB
BC

等等...

最佳答案

从数学上来说,您正在寻找 cartesian power字母表的。

adamk提供的递归是正确的,但你可以稍微简化一下:

void printAllLetterSequences(String prefix, int length) {
    System.out.println(prefix);
    if (prefix.length() < length)
        for (char c = 'A'; c <= 'Z'; c++)
            printAllLetterSequences(prefix + c, length);
}

关于java - 使用递归生成所有字母组合的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3695019/

相关文章:

java - Android应用程序连接到外部数据库

java - 霍夫曼编码算法给出奇怪的树(Java)

java - 如何使用java执行scala代码

java - 迭代列表直到列表为空

java - 如何将 Double[] 转换为 double[]?

java - Logback - 如何单独记录异常的简单名称

java - 如何在 cactoos 的空白字符串之后从文件中检索字符串?

java - 使用圆角背景在滑动时删除项目

java - 在我的小程序中使用 webrenderer 时出现错误

java - 如何匹配除一个以外的所有单词?