Herausforderung Von hier und auch hier genommen
Eine Sequenz in n Klammern besteht aus ns ( und ns ) .
Eine gültige Klammerfolge ist wie folgt definiert:
Sie können das Löschen benachbarter Klammerpaare "()" wiederholen, bis es leer wird.
Ist beispielsweise
(())eine gültige Klammer, können Sie das Paar an der 2. und 3. Position löschen und es wird(), dann können Sie es leer machen.)()(ist keine gültige Klammer, nachdem Sie das Paar an der 2. und 3. Position)(gelöscht haben , wird es und Sie können nicht mehr löschen
Aufgabe
Wenn Sie eine Zahl n angeben, müssen Sie alle korrekten Klammern in lexikografischer Reihenfolge generieren
Die Ausgabe kann ein Array, eine Liste oder eine Zeichenfolge sein (in diesem Fall eine Sequenz pro Zeile).
Sie können ein anderes Paar von Klammern wie verwenden {}, [], ()oder jede open-close Zeichen
Beispiel
n = 3
((())) (()()) (())() ()(()) ()()()n = 2
(()) ()()
1s und -1s) ausgeben können ?