Algorithm 平衡圆括号

Algorithm 平衡圆括号,algorithm,parentheses,catalan,Algorithm,Parentheses,Catalan,我想知道是否有人可以回答我下一个问题的回溯解决方案中生成的结果数: 给定n对括号,编写函数以生成格式良好的括号的所有组合 例如,给定n=3,解决方案集为: “(())”、“(())”、“(())()”、“(())()”、“(())”、“(())” stackoverflow中有一个相关帖子: 我怀疑是否有一个公式可以给出我在计算前可以生成的有效括号数。 例如: -f(n): -f(1)=1 -f(2)=2 -f(3)=5 等等 多谢各位 包含正确匹配的n对括号的数字表达式可以通过加泰罗尼亚数字计

我想知道是否有人可以回答我下一个问题的回溯解决方案中生成的结果数:

给定n对括号,编写函数以生成格式良好的括号的所有组合

例如,给定n=3,解决方案集为:

“(())”、“(())”、“(())()”、“(())()”、“(())”、“(())”

stackoverflow中有一个相关帖子:

我怀疑是否有一个公式可以给出我在计算前可以生成的有效括号数。 例如:
-f(n):
-f(1)=1
-f(2)=2
-f(3)=5
等等


多谢各位

包含正确匹配的n对括号的数字表达式可以通过加泰罗尼亚数字计算。引用维基百科的相关内容:

组合数学中有许多计数问题,其解是由加泰罗尼亚数给出的……Cn是长度为2n的Dyck字数。Dyck字是一个由nx和ny组成的字符串,因此该字符串的初始段中没有比X更多的Y…将符号X重新解释为开括号,Y重新解释为闭括号,Cn统计包含n对正确匹配的括号的表达式的数量

第n个加泰罗尼亚数直接根据二项式系数给出:


看起来确实如此,这使得“向我们展示您的尝试”部分非常有针对性。这个问题似乎离题了,因为它是关于组合数学公式的,最好在上提问。谢谢!事实上,我在为一次编程面试练习算法,当我写算法时,我有点怀疑。