开发者社区> 问答> 正文

[@小川游鱼][¥20]Java 中,怎么打印出一个字符串的所有排列?

问题来自Java技术沙龙的李博
Java线下沙龙报名链接:https://yq.aliyun.com/activity/796

展开
收起
李博 bluemind 2018-12-14 16:43:32 2083 0
2 条回答
写回答
取消 提交回答
  • 多重循环+一个hashset去重即可

    2019-07-17 23:21:18
    赞同 展开评论 打赏
  • `
    public class MySocket {

    public static void main(String[] args)  {
        String[] array = new String[]{"1","2","3","4"};
        listAll(Arrays.asList(array), "");
    }
    public static void listAll(List candidate, String prefix) {
        if(prefix.length()==4){
        System.out.println(prefix);
        }
        for(int i=0;i<candidate.size();i++) {
            List tmp = new LinkedList(candidate);
            listAll(tmp, prefix + tmp.remove(i));//函数中的参数从右边开始解析
        }
    }

    }

    `

    2019-07-17 23:21:18
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载