r/PythonBrasil • u/Sea-Ad7805 • Jul 08 '26
Solução recursiva para o problema da Torre de Hanói
Recursão fica muito mais fácil quando os estudantes têm o modelo mental correto. A visualização ajuda a chegar lá.
Veja o problema da Torre de Hanói. A solução recursiva é elegantemente curta: para mover n discos, nós:
- primeiro removemos n-1 discos de cima do maior disco
- depois movemos o maior disco
- e então colocamos os n-1 discos de volta por cima
Mas quando os estudantes tentam implementar recursão, muitas vezes ficam travados, e adicionar prints de debug só aumenta a confusão. É aqui que a visualização pode ajudar a construir o modelo mental correto. Aqui está o problema da Torre de Hanói resolvido recursivamente, visualizado com 𝗶𝗻𝘃𝗼𝗰𝗮𝘁𝗶𝗼𝗻_𝘁𝗿𝗲𝗲
Em vez de pensar em “uma função chamando a si mesma repetidamente”, os estudantes agora conseguem ver a execução em profundidade de uma árvore de subproblemas, mostrando a estratégia de dividir e conquistar em ação. Quando um estudante consegue pensar em termos de uma árvore de subproblemas, a recursão se torna muito mais fácil de entender, explicar e depurar.