Рекурсивная функция, определенная так:
function factrec($x) {
if($x <= 1) {
return $x;
} else {
return $x * factrec($x - 1);
}
}
И здесь итеративно:
function factiter($x) {
$y = $x;
while($y > 1) {
$x *= ($y - 1);
$y--;
}
return $x;
}
Я читал, что в рекурсивной функции тело - это O (1), а рекурсивные вызовы O (n-1) делают его O (n), но для итеративного тоже O (n)?