<?php
$str = array('A','B','C');
permute($str, 0, count($str));
function permute($arr, $i, $n)
{
if ($i == $n) {
printArray($arr);
return;
}
for ($j = $i; $j < $n; $j += 1) {
swapArrayValues($arr, $i, $j);
permute($arr, $i + 1, $n);
swapArrayValues($arr, $i, $j);
}
}
function swapArrayValues(&$array, $i, $j)
{
$tmp = $array[$i];
$array[$i] = $array[$j];
$array[$j] = $tmp;
}
function printArray($arr) {
echo implode($arr, ' ') . "\n";
}
preferences:
56.6 ms | 402 KiB | 5 Q