Code: Alles auswählen
...[...[...]...]...[...]... BF-Code
1 2 3 4 5 6 Klammer-Nr.
012345678901234567890123456 Code Index
1 2
Du musst die Zeichen abgehen und dir Merken wie viele Klammern aktuell noch offen sind, für die Du noch keine schliessende Klammer gesehen hast.
Am besten macht man das am Anfang in einem Durchlauf und merkt sich in einem Wörterbuch welche Indizes in den Code zusammen gehören. Jeweils in beide Richtungen. Da kann man sich mit einem Stack die Positionen der noch offenen Klammern merken. Dann braucht man während des BF-Programmablaufs keinen Stack mehr und kann die jeweils andere Klammerposition ganz einfach ermitteln in dem man im Wörterbuch nachschaut. Für das Beispiel oben sähe das Wörterbuch so aus:
Code: Alles auswählen
d = {3: 15, 15: 3, 7: 11, 11: 7, 19: 23, 23: 19}