No estoy muy seguro a que te refieres, puede ser que lo que quieres decir es cómo comprobar que los caminos que has generado en tu laberinto son funcionales, es decir, están comunicados.
Hay de esto muchos ejemplos en Intenet, simplemente con escribir en Google algo como: "Creating a maze solving algorithm in Java" te saldrán muchísimos ejemplos.
Yo, si tuviera que hacerlo, dividiría esto en dos partes:
- La primera, comprobaría si el laberinto generado tiene al menos una solución (es decir, si al menos puedo llegar de una forma de la entrada a la salida), de no ser así, tendría que generar un nuevo laberinto o corregir este.
- La segunda parte, una vez que sabemos que al menos tiene una solución, sería comprobar que todos los caminos que hubiera en el laberinto estuvieran conectados entre sí, es decir, que no hubiera ninguna calle a la que no se pudiera entrar, de encontrar errores en esta fase, el algoritmo los corregiría.
Realmente, si no quieres calentarte mucho la cabeza, haz un algoritmo que solamente resuelva la primera parte, porque ya con esa parte, se puede decir que tienes un laberinto "funcional", y ya si quieres hacer algo ya más decente, pues ya sabes, haz las dos partes
P.D: Si nos explicaras mejor tu proyecto, o nos enseñaras algo de código, te podríamos ayudar mejor.