Está en la página 1de 3

Torres de 

Hanoi

Al principio te dan un conjunto de tres varillas y “n” discos, con cada disco de un tamaño diferente.
Llamemos a las varillas A, B y C, y numeremos los discos desde 1, el disco más pequeño, hasta “n”,
el disco más grande.

Al principio, todos los “n” discos están en la varilla A, en orden de tamaño decreciente de la parte


inferior a la parte superior, de modo que el disco “n”  está en la parte inferior y el disco 1 está en la
parte superior. Aquí está cómo se ven las Torres de Hanói para n = 5n=5n o 5 discos:

El juego consiste de dos reglas:

1. Puedes mover solamente un disco a la vez.


2. Ningún disco puede estar encima de un disco más pequeño. Por ejemplo, si el disco 3 está en
una varilla, entonces todos los discos debajo del disco 3 deben tener números mayores que 3 .
Lo primero que vamos hacer es ver cómo resolver el problema de manera recursiva. Vamos a
empezar con un caso realmente sencillo: un disco, es decir, n = 1n=1n o 1. El caso de n =
1n=1n o 1 será nuestro caso base. Siempre puedes mover el disco 1 de la varilla “A” a la
varilla “B”, porque sabes que cualquier disco debajo debe ser mayor. Y no hay nada especial
acerca de las varillas “A” y “B”. Puedes mover el disco 1 de la varilla “B” a varilla “C” si lo
deseas, o de la varilla “C” a la varilla “A”, o de cualquier varilla a cualquier varilla. Resolver el
problema de las Torres de Hanói con un disco es trivial, y requiere mover el único un disco
solamente una vez.

Primero, mueve el disco 1 de la varilla A a la varilla C:

Observa que usamos la varilla C como una varilla libre, un lugar en donde poner el
disco 1 para que podamos llegar al disco 2. Ahora que el disco 2 (el disco inferior)
está expuesto, muévelo a la varilla B:
Por último, mueve el disco 1 de la varilla C a la varilla B:

Esta solución toma tres pasos, y una vez más no hay nada especial acerca de
cómo mover los dos discos de la varilla A a la varilla B. Puedes moverlos de la
varilla B a la varilla C al usar la varilla A como la varilla libre: mueve el disco 1 de la
varilla B a la varilla A, luego mueve el disco 2 de la varilla B a la varilla C y termina
por mover el disco 1 de la varilla A a la varilla C.

También podría gustarte