求m个A,n个B 的排列种数???
class test {
public static void main(String[] args) {
System.out.println(f(2,4));//m=2,n=4
}
public static int f(int a,int b){
if(a==0||b==0) return 1;
return f(a-1,b)+f(a,b-1);//这一步是怎么得来的 O(∩_∩)O~ 没看懂
}
}
------解决方案--------------------递归。。
------解决方案--------------------自己把数值放进去想想就清楚了嘛,不过F这个方法是什么功能的,不清楚
------解决方案--------------------自己调用自己,递归,你debug就知道了。。。
------解决方案--------------------return f(a-1,b)+f(a,b-1);//这一步是怎么得来的 O(∩_∩)O~ 没看懂
这一步是return的值。比如mian中:System.out.println(f(2,4))调用方法
f(1,1)+f(2,3);这时候执行f(1,1)和f(2,3)