国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 邏輯算法 > 正文

PHP數組非遞歸全排列算法

2020-03-22 18:02:37
字體:
來源:轉載
供稿:網友
  • function getAllPerm($source) {     $rs = array();     sort($source);     $last = count($source) - 1;     $z = 0;     $x = $last;     $rs[] = $source;      while($x > 0)     {         // 相鄰的兩個元素,先將x的值賦給y,x再自減1         $y = $x--;          // 如果前一個元素的值小于后一個元素的值         if($source[$x] < $source[$y])         {             // 從尾部開始,找到第一個大于 $x 元素的值  www.it165.net            $z = $last;             while($source[$x] > $source[$z])             {                 $z--;             }              // 交換 $x 和 $z 元素的值             list($source[$x], $source[$z]) = array($source[$z], $source[$x]);              // 將 $y 之后的元素全部逆向排列             for($i = $last; $i > $y; $i--, $y++)             {                 list($source[$i], $source[$y]) = array($source[$y], $source[$i]);             }             $rs[] = $source;             $x = $last;         }     }     return $rs; }  $source = array(1,2,3); $rs = getAllPerm($source); print_r($rs); 

     

    輸出結果:

     

    Array (     [0] => Array         (             [0] => 1             [1] => 2             [2] => 3         )      [1] => Array         (             [0] => 1             [1] => 3             [2] => 2         )      [2] => Array         (             [0] => 2             [1] => 1             [2] => 3         )      [3] => Array         (             [0] => 2             [1] => 3             [2] => 1         )      [4] => Array         (             [0] => 3             [1] => 1             [2] => 2         )      [5] => Array         (             [0] => 3             [1] => 2             [2] => 1         )  )
    PHP編程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 右玉县| 江山市| 胶州市| 洛扎县| 信丰县| 静安区| 离岛区| 云南省| 通化县| 上虞市| 旺苍县| 南投市| 齐齐哈尔市| 凯里市| 元朗区| 嘉峪关市| 朝阳区| 繁峙县| 宣城市| 乐安县| 景德镇市| 改则县| 姜堰市| 绥德县| 商城县| 淮安市| 通海县| 伊宁市| 武汉市| 措勤县| 澄城县| 田阳县| 会宁县| 霍山县| 嘉义县| 怀宁县| 蒲城县| 皋兰县| 三河市| 宜春市| 四平市|