/**
*
* 题目:用数组中的所有数字组合出最大的数,每个数字使用一次
* 分析:排列组合遍历所有组合出来的数,始终维护一个最大数
*
*/
$array = array(4, 91, 9, 8, 3, 11);
function get_max_num($array, & $max=0, $n){
foreach($array as $key => $value){
$a = $array;
$num = $a[$key];
$k = $n;
$k .= $num;
array_splice($a, $key, 1);
//print_r($a);exit();
if(count($a) > 0)
get_max_num($a, $max, $k);
else{
$max = $k > $max ? $k : $max;
}
}
return $num;
}
get_max_num($array, $max, '');
echo $max; //99184311
转载请注明:小Y » 用数组中的所有数字组合出最大的数,每个数字使用一次
php实现时间轮算法