欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PHP 排列组合

程序员文章站 2022-07-11 09:11:34
...

计算数组有多少种排列组合

 

<?php
$arr = array('a', 'b', 'c', 'd', 'e', 'f');
combine_array($arr);

function combine_array($arr, $index=0) {
	static $num = 0;
	$arr_len = count($arr);
	if($arr_len == $index) {
		++$num;
		echo $num.' '. join(",", $arr) . '<br/>';
	} else {
		for($i=$index; $i<$arr_len; $i++) {
			list($arr[$index], $arr[$i]) = array($arr[$i], $arr[$index]);
			combine_array($arr, $index+1);
			list($arr[$index], $arr[$i]) = array($arr[$i], $arr[$index]);
		}
	}
}