Pour construire un labyrinthe de forme aléatoire, on peut utiliser l'algorithme suivant:

1) Définir un réseau de N cellules carrées
(N = hauteur*largeur) et les initialiser comme non visitées (cellules closes avec quatre murs).
2) Choisir une cellule origine (position arbitraire).
3) Tester les quatre cellules voisines (nord, est, sud, ouest) pour déterminer celles qui ont déjà été visitées.
4) Si les quatre voisines ont déjà été visitées, ajuster les pointeurs de cellule jusqu'à trouver une cellule déjà visitée limitrophe d'au moins une cellule non visitée.
5) Choisir aléatoirement une cellule parmi les cellules non visitées limitrophes.
6) Y aller et créer une ouverture entre cette cellule et celle que l'on quitte.
7) Boucler vers le point 3 tant que toutes les N cellules non pas été visitées.

Dans le programme la valeur de la largeur doit être comprise entre 15 et 47.
Celle de la hauteur doit être comprise entre 5 et 22.
On entre en haut à gauche et on sort en bas à droite.