组合算法的PHP解答方法_PHP教程
程序员文章站
2024-02-17 19:12:10
...
题目:组合算法:有一个数组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;$ifor($k=$c-$i;$k>0;$k–){
$a +=$k;
}
}
echo $a;
解答:先看规律吧:
假设这个数组为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;$ifor($k=$c-$i;$k>0;$k–){
$a +=$k;
}
}
echo $a;
上一篇: MongoDB循序渐进之[特性]介绍
下一篇: PHP开发中修改服务器中的编码
推荐阅读
-
组合算法的PHP解答方法_PHP教程
-
codeigniter实现get分页的方法,codeigniterget分页_PHP教程
-
php rand() 随机数生成的方法介绍_PHP教程
-
php实现字符串翻转的方法,php字符串翻转_PHP教程
-
PHP查询快递信息的方法,PHP快递信息方法_PHP教程
-
PHP实现将颜色hex值转换成rgb的方法,hexrgb_PHP教程
-
smarty模板引擎从配置文件中获取数据的方法,smarty模板_PHP教程
-
Zend Framework实现Zend_View集成Smarty模板系统的方法,zend_viewsmarty_PHP教程
-
php函数指定默认值方法的小例子_PHP教程
-
PHP5.5在windows安装使用memcached服务端的方法_PHP教程