Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/08/2012, 11:06
CbooT
 
Fecha de Ingreso: agosto-2012
Ubicación: España
Mensajes: 6
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema de recursividad y/o backtracking

Hola Deses:

No acabo de ver exáctamente dónde dices que hay recursividad, sea como fuere, como bien dices, un hashmap para eso, no, no me parece muy "elegante", tienes estructuras ordenadas más cómodas para ello. Tienes que ejecutar acciones secuencialmente, por lo tanto creo que deberías utilizar una lista enlazada y recorrerla. La forma de introducir los elementos (A, B, o C) sigue siendo la misma, solo que tú ya no tienes que meterles el índice, se mete el primero, luego por la cola (la parte trasera de la lista) metes el siguiente y así hasta que no te queden tareas.

Ahora bien, la comparación la debes hacer con un switch (Si es que el identificador de tu tarea va a ser un string, en java 7 ya se permiten strings en la estructura switch)

for (String tareaActual: listaTareas){
switch (tareaActual){
case "A":
doA();
break;
case "B":
doB();
break;
case "C":
doC();
break;
}

Esa sería la forma rápida y sencilla, aunque si te soy sincero, deberías crear una interfaz del tipo IEjecutable o algo así y para cada elemento almacenado en la lista (ya no serían strings) llamar al metodo ejecutar.

P.D: huye de la recursividad siempre que puedas! es fea! (Si, suspendí un par de exámenes con llamadas recursivas XD)