我想用JAVA实现个算法,比如String M={"1","2","a"};
从中任意取2位,也就是M的2次方,我想得到的是11,22,aa,12,21,1a,a1,2a,a2。
也就是第一位是M数组中的任意一个,第二位也是,这样的所有组合。
其中M和N都是灵活的(数组可以定义任意字符和长度,N作为参数传进来)。
请高手指点下,谢谢!
从中任意取2位,也就是M的2次方,我想得到的是11,22,aa,12,21,1a,a1,2a,a2。
也就是第一位是M数组中的任意一个,第二位也是,这样的所有组合。
其中M和N都是灵活的(数组可以定义任意字符和长度,N作为参数传进来)。
请高手指点下,谢谢!
你这个是取了几位。。这不全排列了?
for (int i = 0; i < m.length; i++) {
for (int j = 0; j < m.length; j++) {
System.out.print(m[i] + m[j] + "\t");
}
另外你的N是什么
看不太懂。
N是取多少位,比如取2位(n=2),M的N次方就是3的2次方=9,也就是11,22,aa,12,21,1a,a1,2a,a2这9中排列
这个不是全排列,全排列是不包括重复的,全排列得到的结果是12,21,1a,a1,2a,a2这6个没有11,22,aa这重复的3个