Java 实现排列组合函数
程序代码:
/** * 求排列组合 * */ public class PerAndCom { /** * n的阶乘 * @param n 要计算的阶 * @return n! */ public static int M(int n){ if(1==n || 0==n) return 1; else return n*M(n-1); } /** * 组合数 * @param n 总个数,C的下标 * @param r 要选取的个数,C的上标 * @return n!/(n-r)!r! * */ public static int C(int n,int r){ return M(n)/(M(r)*M(n-r)); } /** * 排列数 * @param n 总个数,A的下标 * @param m 要排列的个数,A的上标 * @return n!/(n-m)! * */ public static int A(int n,int m){ return M(n)/M(n-m); } }