Hace 16 años | Por fvelayos a papelitos.net
Publicado hace 16 años por fvelayos a papelitos.net

Un método sencillo para resolver el problema de las torres de Hanoi. Si n es par, la secuencia es 3-4-5, y si es impar la secuencia es 4-3-5.

Comentarios

Mark_

¿Simplón?

Cagüendiós...para Einstein es simplón!

D

Buenooooo, menuda cosa descubrió el chico este, sí tiene mérito en cuanto a que dió con la solución iterativa pero no cayó en que esa solución ya existía, es un problema típico de programación el hacer el problema recursivo de las torres de hanoi en iterativo.

http://es.wikipedia.org/wiki/Torres_de_Hanoi

Iterativa

editado:


Otra manera de resolver el problema, sin utilizar la recursividad, se basa en el hecho de que para obtener la solución más corta, es necesario mover el disco más pequeño en todos los pasos impares, mientras que en los pasos pares sólo existe un movimiento posible que no lo incluye. El problema se reduce a decidir en cada paso impar a cuál de las dos pilas posibles se desplazará el disco pequeño:

El algoritmo en cuestión depende del número de discos del problema.

* Si inicialmente se tiene un número impar de discos, el primer movimiento debe ser colocar el disco más pequeño en la pila destino, y en cada paso impar se le mueve a la siguiente pila a su izquierda (o a la pila destino, si está en la pila origen).

La secuencia será DESTINO, AUXILIAR, ORIGEN, DESTINO, AUXILIAR, ORIGEN, etc.

* Si se tiene inicialmente un número par de discos, el primer movimiento debe ser colocar el disco más pequeño en la pila auxiliar, y en cada paso impar se le mueve a la siguiente pila a su derecha (o a la pila origen, si está en la pila destino).

La secuencia será AUXILIAR, DESTINO, ORIGEN, AUXILIAR, DESTINO, ORIGEN, etc.

fvelayos

¿Einstein? Gracias.