一、问题描述
给定m个A,n个B,一共有多少种排列. 请用递归完成
二、源码
package bag;
import java.util.Scanner;
public class Class {
static int f(int m, int n) {
if(m == 0 || n == 0)
return 1;//递归出口
return f(m-1, n) + f(m, n-1);
}//主题逻辑(n-1个A和m个B)与(n个A和m-1个B)可以组成的排列数.当A为0个时,m个B组成的排列数(自然是1了),+右侧同理.
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("输入你所设定的m");
int m = scanner.nextInt();
System.out.println("输入你所设定的n");
int n = scanner.nextInt();
System.out.println(f(m, n));
}
}