Java: Calculating binomial coefficient

后端 未结 3 1807
渐次进展
渐次进展 2021-01-07 11:30

I have the following programm calculating the binomial coefficient of two integers. But I want to change the programm, that it calculates and saves only the necessary coeffi

3条回答
  •  有刺的猬
    2021-01-07 12:21

    You don't say which coefficients youi need. If you need C(N,n) for some fixed N, you could translate the C code below, which uses a one dimensional array. After the call, C[n] will hold the binomial coefficient C(N,n) for 0<=m<=N, as long as N is at most 66 -- if you need bigger N you will need to use an integral type with more bits.

    static  int64_t*    pascals_triangle( int N)
    {
    int n,k;
    int64_t*    C = calloc( N+1, sizeof *C);
        for( n=0; n<=N; ++n)
        {   C[n] = 1;
            k = n;
            while( --k>0)
            {   C[k] += C[k-1];
            }
        }
        return C;
    }
    

提交回复
热议问题