作业帮 > 综合 > 作业

C语言递归问题 m个A n个B全排列 求详细解释!

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/21 09:07:48
C语言递归问题 m个A n个B全排列 求详细解释!
题目:m个A,n个B,求其全排列,要求空白出只能填一条语句.
int f(int m,int n)
{if(m==0||n==0)return 0;
return____________;
该题答案:f(m-1,n)+f(m,n-1)
求高手解释!
int f(int m,int n)
{if(m==0||n==0)return 1; // 这里是1才对啊
return____________;
假设m==0或者n==0的时候,全排列只有1种
当m和n都不是0的时候
第一个位置可以是A,也可以是B
当第一个位置是A的时候,后面剩下的排列方式就剩下m-1个A和n个B
当第一个位置是B的时候,后面剩下的排列方式就剩下m个A和n-1个B
所以总的数目是上面两种情况的和