yewanji 2022-02-24 11:07 采纳率: 36.1%
浏览 59
已结题

求一个java算法,计算字符串的排序组合方式


public class Composition {
    
    List<String> chars= Arrays.asList("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S"
            ,"T","U","V","W","X","Y","Z");
    // 传入长度n生成n位字符有多少种组合方法 比如传入3 生成abc acd 等等
    public static List<String> generate(int charsLength){
    
    }
}
  • 写回答

5条回答 默认 最新

  • 关注
    import java.util.Arrays;
    import java.util.LinkedList;
    import java.util.List;
    
    public class Main {
        public static void DFS(List<String> chars, String prefix, int max) {
            if (prefix.length() != 0  && max==0) {
                System.out.println(prefix);
                return;
            }
    
            for (int i = 0; i < chars.size(); i++) {
    
                List<String> temp = new LinkedList<String>(chars);
                String item = (String) temp.remove(i); // 取出被删除的元素,这个元素当作一个组合用掉了
                DFS(temp, prefix + item, max - 1);
            }
        }
    
        static List<String> chars = Arrays.asList("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O",
                "P",
                "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z");
    
        public static void main(String[] args) {
            DFS(chars, "", 3);
        }
    
    }
    

    算法修改自:https://blog.csdn.net/Mikchy/article/details/91383798

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 3月4日
  • 已采纳回答 2月24日
  • 创建了问题 2月24日

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同