Asumiré que estás haciendo un laberinto rectangular. Una vez que tenga los detalles del laberinto, sabrá qué células tienen una barrera entre ellas y cuáles no. Todo lo que queda es dibujar estas barreras. Necesitas:
- Dibuje un borde alrededor de todo el laberinto, excepto las celdas de inicio y fin
- Dibuje una barrera entre celdas adyacentes si existe
Ahora, cualquier tipo de biblioteca de visualización hará el trabajo por usted. Probablemente sea más fácil si está codificando en Python y usa matplotlib. Hacer todo en algo como Sage también ayudaría.
Hice un programa de generación de laberintos en C ++ (usando el algoritmo de Kruskal). Como no hay bibliotecas estándar sencillas para hacer la visualización en C ++, decidí usar gnuplot para guardar la imagen del laberinto en un archivo. Todo lo que tenía que hacer era hacer que mi programa generara los comandos gnuplot para dibujar las barreras y el borde. Luego, dentro del programa, recibí una llamada del sistema para ejecutar gnuplot en este archivo, y eso guardó la imagen del laberinto en un archivo .jpg. No es la forma más inteligente o elegante de resolver el problema, pero hace el trabajo. Mi implementación se puede encontrar en github: mazegenerator.
- ¿Cuál es el peor caso, el caso promedio y la mejor complejidad de tiempo de un algoritmo?
- Cómo mejorar la lógica o la presentación de la conjetura descrita en una respuesta para que más personas puedan entender lo que creo que es un método sorprendente para crear algorítmicamente un conjunto primo potencialmente infinito
- ¿Cuál es el peor caso de complejidad temporal de BFS (cuando se busca un elemento), sin almacenar los estados visitados?
- ¿Qué tan valioso sería ser ubicado para aprender la estructura de datos usando C?
- Cómo definir una función para encontrar el producto de dígitos en Python usando recursividad