Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/07/2011, 12:55
CalgaryCorpus
 
Fecha de Ingreso: junio-2008
Ubicación: Seattle, USA
Mensajes: 733
Antigüedad: 15 años, 11 meses
Puntos: 61
Respuesta: Torres de hanoi

Pediste que no te lo hagan y que te asesoren, aqui va mi asesoria:

Si los n aros estan en la pila A ( siendo las pilas A, B y C), y se desean mover todos ellos a la pila B, entonces bastaria con mover los n-1 aros de arriba a la pila C, luego mover el unico aro que queda a la pila B y luego mover los n-1 aros desde la pila C a la B,
osea para resolver el problema con tamaño n, hay que resolverlo 2 veces con tamaño n-1 y 1 vez con tamaño 1.

En definitiva, si existiera una funcion recursiva que supiera lo que hay que hacer con n aros, ella en realidad solo sabria:
- como mover 1 aro desde un lugar a otro (facil)
- como mover n aros, desde un lugar a otro ( invocandose a si misma 3 veces )

Una funcion que resuelve el problema de las torres de hanoi seria tan corto como estas 4 instrucciones, encerradas en un if-else, que discrimina entre el caso facil y el no facil.