集合或字符串组合排列
来源:互联网 发布:如寡人者 安与知耻 编辑:程序博客网 时间:2024/06/16 12:57
在一次面试中碰到一题目,给定一个数组或字符串,写出所有可能的组合
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
public class MandomMake {
public static int count =0;/** list 要排列的集合 str 排列后的数据*/public static void make(List list,String Combination){ System.out.println("第"+count+"个组合:"+Combination); count++; for (int i = 0; i < list.size(); i++) { List items=new LinkedList(list); make(items, Combination+items.remove(i)); }}public static void main(String[] args) { String [] aStrings={"a","b","c"}; String ab="abcd"; //集合排列 //make(Arrays.asList(aStrings), ""); //字符串排列 make(Arrays.asList(ab.split("")), "");}
}
测试后的结果:
集合排列:(此处集合没有添加[]和, 只做测试)
第0个组合:
第1个组合:a
第2个组合:ab
第3个组合:abc
第4个组合:ac
第5个组合:acb
第6个组合:b
第7个组合:ba
第8个组合:bac
第9个组合:bc
第10个组合:bca
第11个组合:c
第12个组合:ca
第13个组合:cab
第14个组合:cb
第15个组合:cba
字符串:
第0个组合:
第1个组合:a
第2个组合:ab
第3个组合:abc
第4个组合:abcd
第5个组合:abd
第6个组合:abdc
第7个组合:ac
第8个组合:acb
第9个组合:acbd
第10个组合:acd
第11个组合:acdb
第12个组合:ad
第13个组合:adb
第14个组合:adbc
第15个组合:adc
第16个组合:adcb
第17个组合:b
第18个组合:ba
第19个组合:bac
第20个组合:bacd
第21个组合:bad
第22个组合:badc
第23个组合:bc
第24个组合:bca
第25个组合:bcad
第26个组合:bcd
第27个组合:bcda
第28个组合:bd
第29个组合:bda
第30个组合:bdac
第31个组合:bdc
第32个组合:bdca
第33个组合:c
第34个组合:ca
第35个组合:cab
第36个组合:cabd
第37个组合:cad
第38个组合:cadb
第39个组合:cb
第40个组合:cba
第41个组合:cbad
第42个组合:cbd
第43个组合:cbda
第44个组合:cd
第45个组合:cda
第46个组合:cdab
第47个组合:cdb
第48个组合:cdba
第49个组合:d
第50个组合:da
第51个组合:dab
第52个组合:dabc
第53个组合:dac
第54个组合:dacb
第55个组合:db
第56个组合:dba
第57个组合:dbac
第58个组合:dbc
第59个组合:dbca
第60个组合:dc
第61个组合:dca
第62个组合:dcab
第63个组合:dcb
第64个组合:dcba
“`
- 集合或字符串组合排列
- 字符串的排列/组合
- 字符串排列与组合
- 字符串的排列、组合
- 字符串的组合排列
- 集合的排列与组合
- 字符串的组合排列(非全排列)
- 字符串的排列和组合
- 字符串的排列与组合
- (1)字符串全排列 / 组合
- 字符串的排列和组合
- 字符串的排列与组合
- 字符串的排列和组合
- 字符串的排列与组合
- 字符串的排列与组合
- 字符串的排列与组合
- 多重集合的排列和组合问题
- 求集合的组合和排列问题
- Redis的哨兵
- 520. Detect Capital
- 关于继承构造器的调用
- 虚拟机 linux ubuntu 与 win7 系统之间文件夹共享
- greedy LeetCode 316. Remove Duplicate Letters
- 集合或字符串组合排列
- hdu1097 A hard puzzle(快速幂)
- ping:检查网络是否连通的Dos命令
- 51Nod-1310-Chandrima and XOR
- 【转自eguid大神】实时监控、直播流、流媒体、视频网站开发方案设计简要
- [bigdata-61] centos 6.8 安装mysql 5.1.73
- Bellman-Ford的队列优化
- Druid
- [BZOJ4561][JLoi2016]圆的异或并(扫描线+splay)