Java 求组合数C(n,m)

简介: 计算公式

计算公式

image.png

Java实现

求C(n,m)
//从n个球中取m个的组合种类
public static int C(int n,int m){
    if(n==m)
        return 1;
    else
        return  JC(n)/(JC(m)*JC(n-m));
    }
//求阶乘
    public static int JC(int num){
        if (num==1){
            return 1;
        }else {
            return JC(num-1)*num;
        }
    }


求C(n,1)+C(n,2)+...+C(n,m)

public static int sumOfC(int num){
        int sum = 0;
        if (num == 1){
            return 1;
        }else {
            for (int i = 1; i <= num; i++) {
                sum+=C(num,i);
            }
            return sum;
        }
    }
相关文章
|
5月前
|
算法 Java
JAVA中的递推算法及其应用
JAVA中的递推算法及其应用
68 1
|
6月前
|
存储 算法 Java
Java:找出1000以内所有完数
Java:找出1000以内所有完数
|
6月前
|
算法 Java 图形学
Java代码轻松搞定定积分
Java代码轻松搞定定积分
170 0
|
6月前
|
Java
Java代码计算两数和差积商余
Java代码计算两数和差积商余
124 0
|
6月前
|
算法 Java C++
整数拆分(c++,java)
整数拆分(c++,java)
43 0
|
6月前
|
Java C++
区间合并(c++,java)
区间合并(c++,java)
30 0
|
6月前
|
Java
Java 求组合数C(n,m)
Java 求组合数C(n,m)
|
Java
【Java】完数问题
【Java】完数问题
70 0
|
机器学习/深度学习 Java
分解质因数(java)
分解质因数(java)
108 0
java202302java学习笔记第十天-求数组的最大值
java202302java学习笔记第十天-求数组的最大值
65 0
java202302java学习笔记第十天-求数组的最大值