PHP排列组合方法

public static function getCombinationToString2($arr, $m)

{

    $result = array();

    if ($m ==1)

    {

        return $arr;

    }

    if ($m == count($arr))

    {

        $result[] = implode(',' , $arr);

        return $result;

    }

    $temp_firstelement = $arr[0];

    unset($arr[0]);

    $arr = array_values($arr);

    $temp_list1 = self::getCombinationToString2($arr, ($m-1));

    foreach ($temp_list1 as $s)

    {

        $s = $temp_firstelement.','.$s;

        $result[] = $s;

    }

    unset($temp_list1);

    $temp_list2 = self::getCombinationToString2($arr, $m);

    foreach ($temp_list2 as $s)

    {

        $result[] = $s;

    }

    unset($temp_list2);

    return $result;

}

你可能感兴趣的:(PHP排列组合方法)