Que signifie -1 en récursion ?
P粉578343994
P粉578343994 2023-09-07 10:10:20
0
1
662

Dans ce code, j'essaie de comprendre le concept de récursivité, mais je passe complètement à côté de l'essentiel : sum(arr, n) = sum(arr, n - 1) + arr[n - 1];

J'ai ce code :

function sum(arr, n){

  if(n <= 0){
    return 0;

  } else {
    return sum(arr, n - 1) + arr[n - 1];
  }

}

console.log(sum([5, 4, 7, 9, 2, 6], 5);

J'essaie de comprendre l'expression : sum(arr, n - 1) + arr[n - 1]; Est-ce comme ça : Dans sum(arr, n - 1), n est (index - 1) ou (n - 1) est la longueur de l'élément du tableau à ajouter. De plus, après cela, qu'en est-il de la deuxième expression arr[n - 1]. Est-ce que [n- 1] est un élément de tableau ? Parce qu'il est dans un tableau, il y a "[]".

Désolé si quelque chose est stupide ou ennuyeux, mais si quelqu'un peut m'aider à m'orienter dans la bonne direction, je l'apprécierais vraiment.

P粉578343994
P粉578343994

répondre à tous(1)
P粉423694341

Votre fonction sum(arr,n) 可以描述为计算 arr[0]+...+arr[n-1].

C'est équivalent à arr[0]+...+arr[n-2]+arr[n-1]

C'est équivalent à sum(arr,n-1) + arr[n-1]

Le seul cas où cette règle ne s'applique pas est lorsque n<=0 , où la somme est 0.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal