跳转到主内容
极星编程网:以代码为星,赴技术山海!

求数字组合算法解决方案

求数字组合算法假设有4个数字1,2,3,4要求其中三个数字的排列,但不能重复。

例如组合:123,124124,134,234。

其中   123   的组合和213,312,321,132,231   的组合都是一样的。

怎么实现?小弟菜鸟,在线等,谢谢!

------解决方案--------------------上面有错for($i=1;$i for($j=$i+1;$j for($k=$j+1;$k echo "$i,$j,$k";}}}------解决方案--------------------/*** 函数 combination* 功能 m取n的组合函数* 参数* $ar 数组,原始数据* $num 数值,每个组合的元素个数**/ if(! function_exists( 'combination ')):function combination($ar, $num) {$control = range(0, $num-1);$k = false;$total = count($ar);while($control[0] $t = array();for($i=0; $i $r[] = $t;for($i=$num-1; $i> =0; $i--) {$control[$i]++;for($j=$i; $j if($control[$i] }}return $r;}endif;/** 示例 **/ print_r(combination(array(1,2,3,4,5), 3));

相关文章