[Illustration] Fonction récursive hiérarchique [Ruby]

introduction

Quand j'ai découvert les fonctions récursives pour la première fois, j'ai eu du mal à les comprendre. J'ai pu le comprendre en l'écrivant sur papier à l'époque, alors je l'ai illustré cette fois.

Qu'est-ce qu'une fonction récursive?

Une fonction qui s'appelle elle-même dans la fonction définie par def ~ end. Si elle est célèbre, la fonction de Fibonacci est souvent traitée comme une introduction aux fonctions récursives. Si vous êtes nouveau dans ce domaine, veuillez effectuer une recherche.

Qu'est-ce que le revêtement de sol

Le produit de n nombres naturels consécutifs de> 1 à n est appelé la puissance de n. Écrivez n!, Par exemple, 4! = 1 × 2 × 3 × 4 = 24. Cependant, la puissance de 0 est 1.

Source: dictionnaire goo

Code utilisant des fonctions récursives

def factorial(num)
  if num == 1 || num == 0
    return 1
  end
  return num * factorial(num - 1)
end

C'est un code très simple, mais c'est étonnamment déroutant quand on y pense dans le cerveau.

Illustré

スクリーンショット 2020-10-16 22.45.16.png

À la fin

Je suis encore nouveau dans les fonctions récursives, donc je suis toujours confus sur les choses compliquées. Cependant, je pense que le code illustré cette fois-ci est la base, donc si je me perds, je reviendrai au début.

J'espère que cet article aide quelqu'un à comprendre les fonctions récursives.

Recommended Posts

[Illustration] Fonction récursive hiérarchique [Ruby]
[Illustration] Recherche de la somme des pièces avec une fonction récursive [Ruby]
Ruby: fonction d'édition de compte
[Ruby on Rails] Introduction de la fonction de pagination
[Ruby on Rails] Fonction de sortie CSV
[Ruby on Rails] Implémentation de la fonction de commentaire
[Ruby on Rails] DM, fonction de chat