本帖最后由 wxinlin 于 2014-11-12 19:06:14 编辑

解决方案 »

  1.   

    $str    = 'abc';
    $res    = Arrangement( $str );
    print_r($res);function Arrangement($arr = array(), $res = '') {
      if(! is_array($arr) ) $arr = str_split($arr);
      if(empty($arr)) $array[] = $res;
      else foreach($arr AS $k => $v) {
        unset($arr[$k]);
        foreach( Arrangement($arr, $res . $v) AS $t) $array[] = $t;
        $arr[$k]    = $v;
      }
      return  $array;
    }Array
    (
        [0] => abc
        [1] => acb
        [2] => bca
        [3] => bac
        [4] => cab
        [5] => cba
    )