第一类斯特林数
第一类斯特林数表示的是将n个不同元素分成k个不同的环的方案数。两个环不相同当且仅当这两个环不能通过旋转得到。记作s(n,k).
s(n,k)的递推公式: s(n,k)=(n-1)*s(n-1,k)+s(n-1,k-1) ,1<=k<n
边界条件:s(n,0)=0 ,n>=1 s(n,n)=1 ,n>=0
递推关系的说明:
1.考虑第n个物品,n可以单独构成一个非空循环排列,这样前n-1种物品构成k-1个非空循环排列,方法数为s(n-1,k-1);
2.也可以前n-1种物品构成k个非空循环排列,而第n个物品插入第i个物品的左边,这有(n-1)*s(n-1,k)种方法。
第二类斯特林数
第二类t斯特林数是集合的一个拆分,表示将n个不同的元素拆分成k个集合的方案数,记为 s(n,m),描述为:将n个不同的球放入k个无差别的盒子中,要求盒子非空,有几种方案?
S(n,k)的递推公式是:S(n,k)=k*S(n-1,k)+S(n-1,k-1) ,1<= k<n
边界条件:S(n,0)=0 ,n>=1 S(n,n)=1 ,n>=0 //两类的边界条件相同,递推公式不同
递推关系的说明:
1.考虑第p个物品,p可以单独构成一个非空集合,此时前p-1个物品构成k-1个非空的不可辨别的集合,方法数为S(p-1,k-1);
2.也可以前p-1种物品构成k个非空的不可辨别的集合,第p个物品放入任意一个中,这样有k*S(p-1,k)种方法。
//注:对于第二种斯特林数k!*s(n,k)表示n个不同的元素拆分成的k个集合的内部有序
//注:bell数,:This is the link