卡特兰数是组合数学中一个常出现在各种计数问题中出现的数列,其前n项为(从0开始):1,1,2,5,14,42,132,429,1430,4862...
卡特兰数满足以下性质:
1.令h(0)=1,h(1)=1,Catalan数满足递推式。
h(n) = h(0)*h(n-1) + h(1)*h(n-2)+...+h(n-1)*h(0),(n>=2)
其它通项公式:
代码实现:
def catalan(n):
if n==0 or n==1:
return 1
return (4*n-2)*catalan(n-1)/(n+1)
卡特兰数的应用:
1.12个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比第一排的人高,问排列的方式有多少种?
看到一个链接(https://blog.csdn.net/wookaikaiko/article/details/81105031),后头补充一下