排列组合计算器 v2.0

快速计算 排列数 P(n, k)组合数 C(n, k) ,支持阶乘分解与即时结果

大数支持 实时计算 步骤展示

输入参数

请输入 0 ~ 999 的整数
请输入有效的选取个数
计算结果 即时
排列数 P(n, k) 336
组合数 C(n, k) 56

阶乘展开 8! = 40320

支持 n, k 为 0 ~ 999 整数,大数显示科学计数法。

排列组合示意图 组合与排列公式
公式记忆

P(n,k) = n! / (n−k)!

C(n,k) = n! / [k!(n−k)!]


排列有序 组合无序

排列组合详解

排列(Permutation) 指从 n 个不同元素中取出 k 个元素,按照一定顺序排列的个数。记作 P(n, k) 或 A(n, k)。
组合(Combination) 指从 n 个不同元素中取出 k 个元素,不考虑顺序的个数。记作 C(n, k) 或 nCk。

应用场景:密码学、概率统计、生物信息、游戏数值设计、赛事分组等。

排列示例 P(8,3) = 336
组合示例 C(8,3) = 56

快速问答

❓ 当 k > n 时怎么办?

排列与组合数均为 0,因为无法从较少的元素中选取更多。计算器会自动归零。

❓ 为什么阶乘结果显示科学计数法?

当数字超过 15 位时,JavaScript 自动使用指数形式,例如 21! ≈ 5.1e19,不影响排列组合值。

❓ 如何计算重复排列?

本工具为经典无重复排列/组合。重复排列可用 n^k 公式,后续版本或将支持。

常见问题与技巧 (FAQ)

📌 组合恒等式 C(n,k)=C(n,n−k)

例如 C(8,3)=C(8,5)=56,计算器可直接验证。

📌 大数溢出处理

当 n>170 时,阶乘超出 JS 最大安全整数,计算器返回科学计数法,组合数仍保持相对精度。

📌 排列与组合的关系

P(n,k) = C(n,k) × k! ,即排列是组合再乘以内部排列数。

📌 0! 为什么等于1?

数学约定,空集的排列方式为1,保证组合公式一致。

排列组合计算器 知识图谱