组合算法的PHP解答方法

题目:组合算法:有一个数组a,有N 个元素,现在要求从中找出含有任意元素的所有组合个数。
解答:先看规律吧:
假设这个数组为array(1,2,3,4,5)那么M=5;
可能出现的组合为:
1个数字的组合个数: 5
2个数字的组合个数: 4+3+2+1
3个数字的组合个数: 3+2+1
4个数字的组合个数: 2+1
5个数字的组合个数: 1
很眼熟吧,就是一个逆序的9*9乘法表。除过第一行有M个组合外,其他的组合按乘法表来处理,2个FOR语句嵌套而已
代码:

复制代码 代码如下:


$c = 5;
$a = $c;
for($i=1;$i<=$c;$i++){
for($k=$c-$i;$k>0;$k–){
$a +=$k;
}
}
echo $a;

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/d06f90f949a718ab30fe1594c6540a45.html