Étape 2: Le Code du modèle récursif
Pour résoudre pour N disques, nous devons être en mesure de résoudre pour les disques N-1. C’est là qu’intervient la récursivité. Dans le cadre de ce plan, vous souhaitez écrire du code qui s’applique à un nombre différent de disques pour le puzzle, ainsi que différents postes de départ et de destination.
Le pseudo-code pour cela ressemble à :
J’ai EXPRESSEMENT pour afficher A, B de publier et de participer C ci-dessus, mais le code doit être généralisée, car selon le disque, le poteau de départ et la destination des messages sera différents. Si vous pensez cela, nous allons résoudre le casse-tête 3 fois :
- Déplacement des disques N-1 de poste A poster B
- Mobiles N-1 disques de poste B de poster C
- Déplacer N disques de A poste de poster C
Si vous avez besoin d’un programme généralisé qui vous permettra de lui dire quels sont les postes de départ et de destination. Ce qui est intéressant, c’est que vous n’écrivez pas vraiment beaucoup de code, qui est une grande partie de l’appel de la récursivité. Vous décrivez simplement au programme Comment briser un calcul en petits morceaux, et l’ordinateur fait le reste.
Le pseudo-code détaillé ressemble à :
Voici à quoi ressemble le code JavaScript :
Si vous n’êtes pas un programmeur, laissez-moi vous expliquer que le code ci-dessus est encapsulé dans une « fonction » qui vous permet d’exécuter le même code avec différentes entrées. Vous pouvez maintenant dire le programme combien de disques vous avez dans votre puzzle, ainsi que les postes sont start, destination et points d’arrêt. La fonction est également la base pour être en mesure d’exécuter la récursivité, dans laquelle le même code est fonctionner encore et encore, mais avec différentes entrées (entrées sont également connu sous le nom « paramètres » ou « arguments » dans le jargon de programmation).