黑马程序员技术交流社区
标题:
递归求排列组合问题
[打印本页]
作者:
李知伦
时间:
2012-8-11 00:36
标题:
递归求排列组合问题
之前看到一个题目,想到一种算法,但是没成功(求和的时候)
我描述一下大概,接受用户输入n个正整数,从中取x个的数相乘(不能重复取,但是值可以相同),取尽所有可能的组合,并把积相加.就是类似我们学的排列组合
用递归方法实现
作者:
来明坤
时间:
2012-8-11 01:32
import java.io.*;
public class Test1 {
public static void main(String[] args) {
select(2);
}
private static void select(int k) {
char[] result = new char[k];
subselect(0, 1, result, k);
}
private static void subselect(int head, int index, char[] r, int k) {
for (int i = head; i < a.length + index - k; i++) {
if (index < k) {
r[index - 1] = a;
System.out.println("i="+(i)+";index="+(index));
subselect(i + 1, index + 1, r, k);
}
else if (index == k) {
r[index - 1] = a;
System.out.println(";i="+(i)+";index="+(index)+";index==k:"+(index==k));
System.out.print(i+"===");
System.out.println(r);
subselect(i + 1, index + 1, r, k);
} else {
System.out.println("++");
return;
}
}
}
private static char[] a = { 'a', 'b', 'c' };
} // 我收藏的代码 比较难以理解 你看着吸收吧 呵呵
作者:
李知伦
时间:
2012-8-11 15:29
LS的我有了,只能实现字符的排列组合
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2