全排列(PHP)
/**
* 全排列結果集
* @var array
*/
private $fullPermutationArr = [];
/**
* 全排列
* User: Lindsay
* Date: 2018/9/6
* Time: 9:43
* @param $arr
* @param string $str
*/
public function fullPermutation($arr, $str = '')
{
$cnt = count($arr);
if ($cnt == 1) {
array_push($this->fullPermutationArr, $str ? $str . ',' . $arr[0] : $arr[0]);
} else {
for ($i = 0; $i < count($arr); $i++) {
$tmp = $arr[0];
$arr[0] = $arr[$i];
$arr[$i] = $tmp;
$this->fullPermutation(array_slice($arr, 1), $str ? $str . ',' . $arr[0] : $arr[0]);
}
}
}
// 調用
$this->fullPermutation([1, 2, 3, 4]); $result = $this->fullPermutationArr;
* 全排列結果集
* @var array
*/
private $fullPermutationArr = [];
/**
* 全排列
* User: Lindsay
* Date: 2018/9/6
* Time: 9:43
* @param $arr
* @param string $str
*/
public function fullPermutation($arr, $str = '')
{
$cnt = count($arr);
if ($cnt == 1) {
array_push($this->fullPermutationArr, $str ? $str . ',' . $arr[0] : $arr[0]);
} else {
for ($i = 0; $i < count($arr); $i++) {
$tmp = $arr[0];
$arr[0] = $arr[$i];
$arr[$i] = $tmp;
$this->fullPermutation(array_slice($arr, 1), $str ? $str . ',' . $arr[0] : $arr[0]);
}
}
}
// 調用
$this->fullPermutation([1, 2, 3, 4]); $result = $this->fullPermutationArr;
轉載于:https://www.cnblogs.com/lindsayYang/p/9817572.html
總結
- 上一篇: 10.19 qbxt国庆day3
- 下一篇: 简单的数据检索