排列组合计算器

在线排列组合计算器,计算组合数 C(n,k)、排列数 A(n,k) 或 P(n,k),显示阶乘计算过程,适合概率统计和数学。

工具介绍

排列组合计算器可以计算阶乘 n!、排列数 A(n,k) 和组合数 C(n,k),支持大数精确计算,使用迭代算法避免溢出问题,输入验证保证结果合法。

使用方法

  1. 在「总元素数 n」输入框中输入总的元素个数(非负整数)。
  2. 在「选取元素数 k」输入框中输入要选取的元素个数(非负整数,且满足 0 ≤ k ≤ n)。
  3. 点击「计算」按钮即可得到 n!、排列数 A(n,k)、组合数 C(n,k) 的结果。

计算原理

本工具使用迭代计算,利用性质 C(n,k) = C(n, n-k) 简化计算,并使用 BigInt 支持大数结果输出。

注意事项

什么是排列数和组合数?

排列数 A(n,k) 是指从 n 个不同元素中取出 k 个元素,按一定顺序排成一列,能排出多少种不同的排列。组合数 C(n,k) 是指从 n 个不同元素中取出 k 个元素,不考虑顺序,有多少种不同的组合。

为什么 k 不能大于 n?

根据排列组合的定义,你不能从 n 个元素中选出比总数更多的元素,所以必须满足 0 ≤ k ≤ n 才有意义。

为什么结果能支持很大的数?

本工具使用 JavaScript 的 BigInt 大整数类型进行计算,支持任意精度的整数运算,因此可以输出非常大的结果而不会丢失精度。

0! 为什么等于 1?

这是阶乘的定义,这样排列组合公式才能在边界条件下成立,比如 C(n,0) = 1,符合定义。