用python编写函数,用递归法计算从n个学生中选择k个学生组成一个兴趣小组的不同组合数。
时间: 2024-10-20 10:07:09 浏览: 25
cbi.rar_计算组合数
在Python中,你可以使用递归的方式来计算组合数,这通常涉及到“阶乘”的计算。当你从n个学生中选择k个学生的组合数时,这是一个组合公式C(n, k) = n! / (k!(n-k)!),其中"!"表示阶乘。
下面是一个简单的递归函数来实现这个计算:
```python
def combinations(n, k):
if k == 0 or k == n: # 基线条件:当k等于0或n的时候,只有一个组合(即空组合或全部)
return 1
else:
# 递归情况:计算从n-1个学生中选择k-1个的组合数,然后乘以前面剩下的一个学生的选择
return combinations(n - 1, k - 1) + combinations(n - 1, k)
# 使用示例
n_students = 5
k_students = 3
num_combinations = combinations(n_students, k_students)
print(f"从{n_students}个学生中选择{k_students}个学生的组合数是:{num_combinations}")
阅读全文