帮我写一个排列组合算法
时间: 2023-08-28 07:31:08 浏览: 130
求排列组合的算法
4星 · 用户满意度95%
下面是一个用 JavaScript 实现的排列组合算法:
```javascript
/**
* 计算排列数
* @param {number} n - 总数
* @param {number} m - 取出的数
* @returns {number} - 排列数
*/
function permutation(n, m) {
let result = 1;
for (let i = n; i > n - m; i--) {
result *= i;
}
return result;
}
/**
* 计算组合数
* @param {number} n - 总数
* @param {number} m - 取出的数
* @returns {number} - 组合数
*/
function combination(n, m) {
return permutation(n, m) / permutation(m, m);
}
```
其中,permutation 函数用于计算排列数,combination 函数用于计算组合数。这两个函数的实现都比较简单,都是使用了阶乘的计算方式。排列数的计算公式为:
n! / (n-m)!
组合数的计算公式为:
n! / (m! * (n-m)!)
其中,n 表示总数,m 表示取出的数。
阅读全文