给出了一些括号对。我想显示这些括号的所有正确组合。正确的意思是我应该在每个组合关闭之前打开每个支架。例如,如果括号的数量为2,则输出应为:
(())
()()
3:
((()))
()()()
(()())
(())()
()(())
输出行的顺序并不重要。
我怎样才能用Python做到这一点?
答案 0 :(得分:0)
请试用此代码:
def __F(l, r, pref):
if r < l or l < 0 or r < 0:
return
if r == 0 and l == 0:
print(pref)
return
__F(l - 1, r, pref + "(")
__F(l, r - 1, pref + ")")
def F(n):
__F(n, n, "")
F(2)
F(3)