这个计算器能做什么
本工具用于计算带符号第一类斯特林数(记作 s(n,k))的完整一行,n 为你输入的非负整数。它会以数表形式列出 k = 0, 1, 2, ..., n 对应的全部数值,并给出该行的带符号求和与绝对值求和。这里采用带符号约定:s(n,k) 可正可负。其无符号形式(即"循环计数")c(n,k) = |s(n,k)| 表示把 n 个元素恰好划分为 k 个互不相交循环的排列个数,二者关系为 s(n,k) = (-1)^(n-k) c(n,k)。
计算公式
带符号第一类斯特林数是下降阶乘 (x)_n = x(x-1)(x-2)...(x-n+1) = Σ_k s(n,k) x^k 展开后的系数。它满足递推关系 s(n,k) = s(n-1,k-1) - (n-1)*s(n-1,k),初始条件为 s(0,0) = 1,当 n ≥ 1 时 s(n,0) = 0,且当 k < 0 或 k > n 时 s(n,k) = 0。需要注意,s(n,n) 恒等于 1。
使用方法
输入一个介于 0 到 25 之间的整数 n 并提交即可。计算器采用动态规划,从 n = 0 时的 [1] 开始逐行递推,最终读取末尾一行的结果。你可以用带符号求和(当 n ≥ 2 时为 0)和绝对值求和(等于 n!)作为快速验算依据。
实例演算(n = 5)
逐行递推过程:n=1 得到 [0, 1];n=2 得到 [0, -1, 1];n=3 得到 [0, 2, -3, 1];n=4 得到 [0, -6, 11, -6, 1];n=5 得到 [0, 24, -50, 35, -10, 1]。验算:|0|+|24|+|50|+|35|+|10|+|1| = 120 = 5!,而带符号求和 0+24-50+35-10+1 = 0。
常见问题
带符号还是无符号?本工具返回的是带符号数值。若需要无符号的循环计数 c(n,k),取绝对值即可。
为什么带符号求和等于 0?在下降阶乘中代入 x = 1,当 n ≥ 2 时 (1)_n = 0,而这恰好等于 s(n,k) 的整行求和。
为什么限制 n 的最大值?这些数值以阶乘速度增长,数量级很快变得极大,因此把 n 上限设为 25,以保证数表易读、运算结果可靠。