[递归]m个A,n个B组成多少种排列
public class paixu {
public static int f(int m,int n) {
if(m==0||n==0)return 1;
return f(m-1,n)+f(m,n-1);
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println(f(2,1));
}
}
m个A和n个B的排列情况可以分为两种情况:
1.首字母为A的情况
2.首字母为B的情况
总的情况即为两种情况之和
即调用递归f(m-1,n)+f(m,n-1);
递归出口为:
当m或n为0时,即当A或B的数目为0时则
只有一种排列方式(全A或全B)