java - Java - 如何获取字符串中所有可能的字母组合?
问题描述
有没有办法获得给定字符串的所有可能的字母组合?我不想忽略双字母。我也想得到所有的可能性,即使不是每个字母都被使用。例如:字符串是ABCDE,所以我也想看看BCDE、ACDE、ABDE、ABCE、ABCD的组合
我已经尝试过这里找到的代码,但我认为并非所有组合都包括在内。
public class Main {
private StringBuilder output = new StringBuilder();
private final String inputstring;
public Main( final String str ){
inputstring = str;
System.out.println("The input string is : " + inputstring);
}
public static void main(String[] args) {
Main main= new Main("VRIDENNBEN");
System.out.println("All possible combinations are : ");
main.combine();
}
public void combine() {
combine( 0 );
}
private void combine(int start ){
for( int i = start; i < inputstring.length(); ++i ){
output.append( inputstring.charAt(i) );
if(true) {
System.out.println( output );
if ( i < inputstring.length() )
combine( i + 1);
output.setLength( output.length() - 1 );
}
}
}
}
解决方案
推荐阅读
- sql - 雪花无法识别枢轴对象
- algorithm - 如何按大小和最后一个活动对 WorkQueue 进行排序?
- json - 为什么通过属性访问字段的行为不像直接访问字段?
- python - Pygame:为什么我不能画一个圆形精灵
- excel - Excel VBA,用于根据用户选择设置特定单元格值
- scala - SCIO 用 scio parquet 读取 parquet 文件,未找到生成的案例类
- excel - 将数据透视表添加到顺序工作表
- c - 如何在 scanf 函数中使用编辑转换代码来停止在特定单词处扫描字符串
- pandas - 使用我有条件标记的值创建新列
- xamarin - Xamarin 使用框架创建圆形图像