La fonction récursive définie comme ceci:Est-ce que ces deux fonctions factorielles s'exécutent dans O (n)?
function factrec($x) {
if($x <= 1) {
return $x;
} else {
return $x * factrec($x - 1);
}
}
Et itérative ici:
function factiter($x) {
$y = $x;
while($y > 1) {
$x *= ($y - 1);
$y--;
}
return $x;
}
J'avais lu que la fonction récursive du corps est O (1) et les appels récursifs O (n 1) en faisant O (n), mais pour l'itératif est-ce O (n) aussi?
'Fonction factorielle ($ x) {pour ($ y = $ x; $ y--> 1; $ x * = $ y); return $ x; } ': PHP est si gentil. (Espérons que je n'ai pas fait de faute: D) – NikiC
'! 0 = 1' (pas' 0') –