当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Guava BigIntegerMath binomial()用法及代码示例


Guava BigIntegerMath类的二项式(int n,int k)方法返回n选择k,也称为n和k的二项式系数,即

n! / (k! (n - k)!)

用法:

public static BigInteger binomial(int n, int k)

参数:此方法采用以下参数:


  • n:二项式展开的基础。
  • k:二项式展开的力量。

返回值:此方法返回n和k的二项式系数。

异常:如果n <0,k <0或k> n,则此方法引发IllegalArgumentException。

注意:结果可能占用O(k log n)个空间。

以下示例说明了BifIntegerMath.binomial()方法:

范例1:

// Java code to show implementation of 
// binomial(int n, int k) method 
// of Guava's BigIntegerMath class 
  
import java.math.*; 
import com.google.common.math.BigIntegerMath; 
  
class GFG { 
  
    // Driver code 
    public static void main(String args[]) 
    { 
        int n = 5; 
        int k = 2; 
  
        // Using binomial(int n, int k) method of 
        // Guava's BigIntegerMath class 
        BigInteger ans = BigIntegerMath.binomial(n, k); 
  
        System.out.println("Binomial Coefficient of "
                           + n + " & " + k 
                           + " is:" + ans); 
  
        int n1 = 15; 
        int k1 = 9; 
  
        // Using binomial(int n, int k) method of 
        // Guava's BigIntegerMath class 
        BigInteger ans1 = BigIntegerMath.binomial(n1, k1); 
  
        System.out.println("Binomial Coefficient of "
                           + n1 + " & " + k1 
                           + " is:" + ans1); 
    } 
}
输出:
Binomial Coefficient of 5 & 2 is:10
Binomial Coefficient of 15 & 9 is:5005

范例2:

// Java code to show implementation of 
// binomial(int n, int k) method 
// of Guava's BigIntegerMath class 
  
import java.math.*; 
import com.google.common.math.BigIntegerMath; 
  
class GFG { 
  
    // Driver code 
    public static void main(String args[]) 
    { 
  
        try { 
            int n = 5; 
            int k = 7; 
  
            // Using binomial(int n, int k) method of 
            // Guava's BigIntegerMath class 
            // This should raise "IllegalArgumentException" 
            // as k > n 
            BigInteger ans = BigIntegerMath.binomial(n, k); 
  
            System.out.println("Binomial Coefficient of"
                               + n + " & " + k 
                               + " is:" + ans); 
        } 
        catch (Exception e) { 
            System.out.println("Exception:" + e); 
        } 
    } 
}
输出:
Exception:java.lang.IllegalArgumentException:k (7) > n (5)

参考: https://google.github.io/guava/releases/21.0/api/docs/com/google/common/math/BigIntegerMath.html#binomial-int-int-



相关用法


注:本文由纯净天空筛选整理自Sahil_Bansall大神的英文原创作品 BigIntegerMath binomial() function | Guava | Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。