zoukankan      html  css  js  c++  java
  • 全排列(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;
  • 相关阅读:
    repr() Vs str()
    默认参数
    元组
    字典
    电脑可以办的两类最基本的事情
    代码块
    变量名
    print的逻辑
    input的逻辑
    让python2听懂中文
  • 原文地址:https://www.cnblogs.com/lindsayYang/p/9817572.html
Copyright © 2011-2022 走看看