Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/05/2010, 14:40
Avatar de calichecal
calichecal
 
Fecha de Ingreso: junio-2009
Ubicación: Colombia
Mensajes: 288
Antigüedad: 15 años, 6 meses
Puntos: 12
AYUDA para entender metodo recursivo [SOLUCIONADO]

hola a todos, llevo tres dias tratando de entender un metodo recursivo, el del juego de las torres de hanoi que es muy comun encontrarla para los ejemplos de metodos recursivos(trata de un numero de discos ingresados por teclado con los cuales se muestra por pantalla los movimientos a seguir uno por uno EJm: "Mover disco A a C...", siendo las tres torres:(A, B y C) ), me considero bueno para la logica pero cuando se trata de dos llamados o mas, de un metodo dentro del mismo se me dificulta comprenderlo, agradesco al que me explice el recorrido que hace dicho metodo o me recomiende una buena pagina donde expliquen este tipo de recursividad en profundidad.. grax.. este el codigo:

Código PHP:
public class Recursividad_Torre_De_Hanoi {
    private static 
int movimientos=0;
     public static  
int MovimientosHanoi(int n_discoschar a,char bchar c){
         if(
n_discos >0){
             
MovimientosHanoi(n_discos-1a,c,b);
             
System.out.println("mover disco de "+a+" a "+c);
             
movimientos++;
             
MovimientosHanoi(n_discos-1,b,a,c);
         }
         return 
movimientos;
     }
         
     


    public static 
void main(String[] args){
       
int N_discos,Movimientos;
       
System.out.print("Numero de discos: ");
       
N_discos=Leer.leerint();
       
Movimientos MovimientosHanoi(N_discos,'A','B','C');
       
System.out.print("movientos efectuados: "+Movimientos);
    } 
}
__________________
Hay una fuerza motriz más poderosa que el vapor, la electricidad y la energía atómica: la voluntad. -Einstein-

Última edición por calichecal; 17/05/2010 a las 16:46