#include<iostream>
using namespace std;
int a[100];
void Combine(int m, int k,int n) //从m个数里面选出k个数
{
if (m < k)
return;
if (k == 0)
{
for (int i = 0; i < n; i++)
cout << a[i];
cout << '\n';
}
else
{
//选m
a[n] = m; //将m存入数组
Combine(m - 1, k - 1, n + 1); //n+1表示考虑下一个位置
//不选m
Combine(m - 1, k, n);
}
}
int main()
{
Combine(5, 3,0);
}
递归:从m个数中选出k个数的全排列
最新推荐文章于 2021-12-15 09:01:45 发布