猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
java排列组合的算法 譬如我有(A,B,C,D),我想输出的结果是?
{A,B,C,D}{AB},{AC},{AD},{BC},{BD},{CD}{ABC},{ABD},{ACD},{BCD}{ABCD}各位大神有会做的吗?...
展开
DIEA
浏览 1642
回答 2
2回答
九州编程
1234567891011121314151617181920212223242526272829303132333435363738import static java.lang.System.*;import java.util.*;public class Test{ public static void main(String...args){ ArrayList<String> l=new ArrayList<String>(); out.println("请输入要排序的字母,输入$结束:"); while(true){ Scanner sc=new Scanner(in); String str=sc.nextLine(); if(str.equals("$"))break; else l.add(str); } String s=""; System.out.println(s.isEmpty()); f(s,l); } static void f(String s,ArrayList<String> l){ if(s.isEmpty()){ for(int i=0;i<l.size();i++){ out.println(s+l.get(i)); if(i==l.size()-1)return; f(s+l.get(i),l); } }else{ char[]c=new char[1]; c[0]=s.charAt(s.length()-1); String str=new String(c); for(int i=l.lastIndexOf(str);i<l.size();i++){ out.println(s+l.get(i+1)); if(i==l.size()-2)return; f(s+l.get(i+1),l); } } }} 纯手打 实验过了可以用..望采纳,有不懂的欢迎发问
0
0
0
莫回无
可以这样,1、取1个元素形成集合,输出;2、在前一步的基础上加入一个不重复的元素,输出所有可能性;3、重复2步骤,直到所有元素都加进去了,输出;4、对输出去重。或者倒过来1、把所有元素加入集合,输出;2、在前一步的基础上移走一个元素,输出所有可能性;3、重复2步骤,直到没有元素可以移走了,输出;4、对输出去重
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
算法
正则表达式,要怎麽从下一个字开始匹配,而不是从下一个词?
0 回答
scrapy 解析js代码或正则?
2 回答
Java
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续