Der Begriff «Labyrinth» bezieht sich im folgenden immer auf rechteckiges Raster aus quadratischen Zellen, die mit einem beliebigen Symbol markiert sein können und von denen es bis zu vier Nachbarn (rechts, unten, links, oben) geben kann, wobei dazwischen jeweils eine Mauer vorhanden ist, oder eben nicht.
Gegeben ist folgener Pseudo-Code
Gegeben: ein Labyrinth und eine Startzelle. Alle Zellen unmarkiert.
Markiere Startzelle mit 'S'
Neue Todo-Liste mit Startzelle als einzigen Eintrag.
So lange Todo-Liste nicht leer:
Entferne die letzte Zelle aus der Todo-Liste, nenne diese «aktuell».
Wenn es eine unmarkierte Nachbarszelle gibt, keine Mauer dazwischen:
Markiere Nachbarszelle mit '.'
Füge die «aktuelle» Zelle der Todo-Liste hinzu
Füge die Nachbarszelle der Todo-Liste hinzu
Gegeben ist folgener Pseudo-Code
Gegeben: Breite und Höhe des zu generierenden Labyrinths
Erzeuge ein neues Labyrinth mit gegebener Grösse, alle Mauern geschlossen, alle Zellen unmarkiert.
Sei die Startzelle die Zelle oben links.
Markiere Startzelle mit 'S'
Neue Todo-Liste mit Startzelle als einzigen Eintrag.
So lange Todo-Liste nicht leer:
Entferne die letzte Zelle aus der Todo-Liste, nenne diese «aktuell».
Wenn es eine unmarkierte Nachbarszelle mit einer Mauer dazwischen gibt, wähle diese zufällig aus allen möglichen aus:
Entferne die Mauer zwischen «aktuell» und der Nachbarszelle
Markiere Nachbarszelle mit '.'
Füge die «aktuelle» Zelle der Todo-Liste hinzu
Füge die Nachbarszelle der Todo-Liste hinzu