斯特林数学习笔记
斯特林数学习笔记
注:本篇只为作者自己看懂,方便以后复习。
注意:如无特殊说明,以下公式的范围皆为 且 为整数。
因为我太菜啦,所以很多东西都只有最浅显的部分。
Part 1.定义
斯特林数分为两种,分别是第一类、第二类。其中第二类较为常用。
第二类斯特林数
定义:第二类斯特林数表示把 个不同元素划分成 个相同的集合中(不能有空集)的方案数。
通项公式:
1.1 第二类斯特林数通项
推导的话考虑第 个数独立放在新的集合,此时系数为 。或者放在新的集合,有 种可能。
第一类斯特林数
定义:第一类斯特林数表示将 个不同元素构成 个轮换的数目。
其中,轮换也可称作原排列,既如果两个排列可以通过旋转相等,那么他们就是相等的。感性理解一下就好。
通项公式:
1.2 第一类斯特林数通项
对比一下的话,发现这两个式子十分的相像。实际上,这两类斯特林数关系非常紧密(不然为啥名字一样呢)
推导的话类似,考虑第 个数。然后插入的话考虑轮换对应排列就差不多。
注意:轮换与排列是双射关系,考虑排列 与 连边组成的连通块组成的环即为不同的轮换。
注意,斯特林数通常出现在各种神秘推式子题,所以各种恒等式才是最重要的。
Part 2.恒等式
2.1
轮换与排列双射。
2.2
证明的话考虑有 种颜色, 个格子,那么两边的意义都是给 个格子染成 种颜色的方案数。当然,用数学归纳法证明也是可以的。
得有意义范围为 ,因此这个式子常常用来优化一些 很大的问题,把枚举上限优化。
2.3
,然后考虑这个多项式的系数,发现刚好就是第一类斯特林数。证明的话可以归纳法证明,但是我们直接设 dp 表示 ,然后推一下递推式发现刚好是第一类斯特林数,就证完了。这里感谢码学长教我这个方法。
2.2 和 2.3 两个式子的样子很是相似。实际上,他们也可以作为斯特林数的定义式,人们需要研究上升幂、下降幂以及正常幂运算的关系,然后发现可以用斯特林数来将他们连接起来。
2.4
这个式子不会,开摆
2.5
发现与 2.3 很相似。原因:
发现相差的只有符号,因此改一下符号即可。
以上四个属于较为常见的。
从通常幂转换到上下降次幂一般用第二类,反之则用第一类。然后从小的转换到大的则需要加符号。
斯特林反演
2.6
证明的话参考这个
首先由结论:
2.6.1
证明:
2.6 证明
建议不要看这个证明,有错误。只是给我自己看的
Part 3.求法
首先,我们可以 暴力递推,一些题目是可以的。
但是我们可以在 的复杂度内求出两种斯特林数的某一行、某一列,总共四种算法。
我不会,摆了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」