1. Apprendre
  2. /
  3. Cours
  4. /
  5. Structures de données et algorithmes en Python

Connected

Exercice

Tours de Hanoï

Dans cet exercice, vous allez implémenter l'énigme des Tours de Hanoï avec un algorithme récursif. Le but du jeu est de transférer tous les disques d'une des trois tiges vers une autre, en respectant ces règles :

  • Vous ne pouvez déplacer qu'un seul disque à la fois.
  • Vous ne pouvez prendre que le disque du dessus d'une pile et le déposer sur le dessus d'une autre pile.
  • Vous ne pouvez pas placer un disque plus grand sur un plus petit.

Picture of the game Tower of Hanoi

L'algorithme présenté est une implémentation de ce jeu avec quatre disques et trois tiges nommées « A », « B » et « C ». Le code contient deux erreurs. En fait, si vous l'exécutez, il fait planter la console parce qu'il dépasse la profondeur de récursion maximale. Pouvez-vous trouver les bogues et les corriger ?

Instructions

100 XP
  • Corrigez le cas de base.
  • Corrigez les appels à la fonction hanoi().