Ayuda con programa de autómatas en java
la verdad es que soy muy novato en el tema y quisiera que me ayudaran. Tengo que hacer un programa que permita ingresar una expresión regular y que me dibuje un autómata finito o que muestra la tabla de transiciones, luego que se ingrese una cadena de caracteres y que el programa me diga si reconoce o no diga cadena. Había hecho una comparación con esto:
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
String expRegular = teclado.next();
String cadena = teclado.next();
Pattern pat = Pattern.compile(expRegular);
Matcher mat = pat.matcher(cadena);
if(mat.matches()){
System.out.println("Correcto");
}else{
System.out.println("Incorrecto");
}
}
}
pero el ingeniero dijo que no quería que utilizara Regex si no que programara el autómata completo. La verdad no se como hacerlo. Si me pudieran dar una idea se los agradecería.