🧮 组合数计算器 C(n, k)

快速计算组合数 · 支持大数 · 显示步骤
120
C(10,3) = 10! / (3!·7!) = 120
组合数公式示意

📘 什么是组合数?

组合数 C(n, k) 表示从 n 个不同元素中取出 k 个元素的所有组合的个数,不考虑顺序。公式为:

C(n, k) = n! / (k! · (n−k)!)

例如 C(10,3) = 120,表示从10个元素中选3个有120种组合。组合数广泛用于概率统计、算法设计、生物信息等领域。

🔍 计算特性

  • 对称性: C(n, k) = C(n, n−k)
  • 边界值: C(n,0)=C(n,n)=1
  • 递推关系: C(n,k) = C(n−1,k−1) + C(n−1,k) (帕斯卡法则)
  • 大数支持: 本计算器使用高精度算法,避免溢出,最大支持 n≤1000 (实际显示精确值)

❓ 常见问题 (FAQ)

组合数和排列数有什么区别?
排列数 P(n,k) 考虑顺序,组合数 C(n,k) 不考虑顺序。例如从{A,B,C}选2个,组合有3种 (AB,AC,BC),排列有6种。
为什么输入 k > n 会得到0?
组合数定义中,当 k > n 或 k < 0 时,C(n,k)=0。计算器会自动处理并返回0。
计算大组合数会溢出吗?
本工具采用 JavaScript 大整数(ES2020 BigInt)计算,对于 n≤1000 可精确显示,超出显示科学记数法提示。
如何计算 C(100, 50) ?
直接在 n 输入 100,k 输入 50,点击计算。结果是一个约 2.9e29 的大整数,本工具会显示完整精确值(若浏览器支持)。
组合数有哪些实际应用?
彩票概率、扑克组合、基因组合、机器学习特征选择、算法分析(如子集问题)等。
组合数应用场景