自然数组合 排列组合 类问题
采用递归实现,递归就是问题规模能够一步步实现降解 函数可以重复调用 也可以调用多次 到最小问题时可以返回
#include <iostream>
using namespace std;
//实现 5个数中 5-1 任意三个数 排列输出
int arr[100];
void comb(int m,int k)
{
int i, j;
for (i = m; i >= k; i--)
{
arr[k] = i;
if (k>1)
{
comb(i - 1, k - 1);
}
else
{
for (j = arr[0]; j > 0; j--)
{
cout << arr[j] << " ";
}
cout << endl;
}
}
}
int main()
{
cout << "杨所优秀!" << endl;
int n, r;
n = 5;
r = 3;
arr[0] = r;
comb(n,r);
system("pause");
return 0;
}