Automata Finito No Deterministico Funcion Recursiva

Mi pregunta es como poder hacer un Autómata Finito No Determinisco ya que estos autómatas pueden seguir varios caminos pero solo hay uno correcto, es por eso que es necesario la recursion y me interesaría saber como se puede hacer esa función de recursion en java esto es para poder validar una cadena dada donde:
Me dan la tabla de tranciones y sobre esta validar la cadena dada de echo ya ise el Autómata Finito Deterministico te paso el código del proceso del AFD que hice:
cadena = JOptionPane.showInputDialog("Ingresar Cadena a Validar ");  
String [] campos = cadena.split("");
//comparando cadena
estado=S;
int c=1,a=0,i=1,j=1;
v=1;
for(int w=1;w<=campos.length-1;w++)
{
            for(a=0;a<ALFx;a++)    
            {
                if(campos[w].equals(ALF[a])){
                estado=A[a+1];
                            }
                for(int s=0;s<Qx;s++)
                {
                    if(estado.equals(Q[s])){
                    i=s+1;
                }
                }
}
}

1 Respuesta

Respuesta
1
No se si voy a poder ayudarte, porque carezco del conocimiento de la teoría de los autómatas de los que me hablas. Sin embargo, lo que sí te puedo decir es que en el código que me pasas hay un error. La forma correcta de recorrer los campos que sacas de la cadena a validar es:
for (int w=0; w<campos.length; w++)
De la forma que lo tenías, nunca pasarías por el primer elemento del array, que empieza en 0 y no en 1.
Ya te digo que no entiendo lo que tiene que hacer tu programa. Si me lo explicas mejor trataré de ayudarte, aunque prueba también a preguntar a más expertos en paralelo, por si te saben ayudar mejor que yo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas