前言:
斯特林数这个东西,好像小学时就看过,当时水平很低,根本不会。
以前也遇到过一道第二类斯特林数的题,当时直接copy题解的,也不会运用。
最近遇到了自然数幂和,递推法很大的局限,只能学学第一类斯特林数。
定义:
斯特林数有第一类斯特林数和第二类斯特林数。
第一类斯特林数也分无符号和有符号,分别记为 su s u 、 ss s s 。
第二类斯特林数记为 S S .
第一类斯特林数组合含义(因为是组合,所以是无符号的):
表示将n个不同元素组成m个圆的方案数,圆的次序不考虑,当然圆不能为空。
第二类斯特林数含义:
Snm S m n 表示将n个不同元素放进m个集合里,与第一类斯特林数唯一的不同的在于它不考虑元素在集合里的次序,集合之间的次序也是不考虑的,集合不能为空。
在这里废话一下,和放球问题对比下。
放球问题指的是将n个无差异的球放进m个盒子里的方案数,盒子非空或不非空是可以控制的。
计算:
第一类斯特林数:
snm=sn−1m−1+(n−1)∗sn−1m s m n = s m − 1 n − 1 + ( n − 1 ) ∗ s m n − 1
理解:
1.把第n个球单独放进新开的第m个圆中,为 sn−1m−1 s m − 1 n − 1 。
2.把第n个球放到前面的n - 1个球的任意一个的左边,为 (n−1)∗sn−1m ( n − 1 ) ∗ s m n − 1
加起来即可。
性质:
s00=1 s 0 0 = 1
sn0=0(n>0) s 0 n = 0 ( n > 0 )
snn