Torres de Hanoi - dambort/algos GitHub Wiki
Escriba los pasos necesarios para ganar el juego llamado "Torres de Hanoi" siendo n el número de discos.
Entrada:
3
A
B
C
Salida:
Mover el disco 1 desde la barra A a la barra B
Mover el disco 2 desde la barra A a la barra C
Mover el disco 1 desde la barra B a la barra C
Mover el disco 3 desde la barra A a la barra B
Mover el disco 1 desde la barra C a la barra A
Mover el disco 2 desde la barra C a la barra B
Mover el disco 1 desde la barra A a la barra B
Caso base: si la torre está formada por un solo disco, es decir, n=1. Se mueve el disco 1 desde la barra de origen a la barra de destino.
En cualquier otro caso, la tarea puede dividirse en dos partes:
-
Se deben mover n-1 discos desde la barra de origen a la barra auxiliar.
torresHanoi(n-1, origen, auxiliar, destino);
-
Se deben mover n-1 discos desde la barra auxiliar a la barra de destino.
torresHanoi(n-1, auxiliar, destino, origen);
Disponible en Torres de Hanoi
Disponible en ejemplo Torres de Hanoi
En el artículo de GeeksforGeeks: Program for Tower of Hanoi
La complejidad de la solución recursiva de las Torres de Hanoi es de 2(n-1).
omegaUp: Torres De Hanoi