网站首页 > 代码片段 > Php > 正文

PHP全组合算法

2017-08-26 21:58:29 来源: 点击:站内收藏
比如一个7个元素的数组,我想要取出这个数组中的5个元素,生成新的数组,这些数组是唯一的。
 
<?php
$arr = array(1,2,3,4,5);
/*
@ res  组装好的每一注的每个元素
@ $a 临时数组
@ $index 数组索引
@ $arr 请求的数组
@ $b 最后要的结果 
*/
$a = array();
$b = array();
$total = 0;
format($a,0,$arr);
function format($res,$index,$arr){
    global $total;
    global $b;
    $new_arr = $res;
    $n_arr = array();
    if($index == count($arr)){
        if(count($new_arr)==5){
            $b[]  = $new_arr;
            echo "<pre>";
            $total++;   
        }       
        return;
    }
    format($new_arr,$index+1,$arr);
    $new_arr[] = $arr[$index];
    format($new_arr,$index+1,$arr);
}

echo "<pre>";
print_r($b);
echo "
";
相关热词搜索:算法 PHP全组合算法 组合
评论正在载入