當前位置: 首頁>>代碼示例>>Java>>正文


Java LongMath.binomial方法代碼示例

本文整理匯總了Java中com.google.common.math.LongMath.binomial方法的典型用法代碼示例。如果您正苦於以下問題:Java LongMath.binomial方法的具體用法?Java LongMath.binomial怎麽用?Java LongMath.binomial使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在com.google.common.math.LongMath的用法示例。


在下文中一共展示了LongMath.binomial方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: expandPower

import com.google.common.math.LongMath; //導入方法依賴的package包/類
/**
 * Expand a polynomial power with the multinomial theorem. See
 * <a href= "http://en.wikipedia.org/wiki/Multinomial_theorem">Wikipedia - Multinomial theorem</a>
 * 
 * @param plusAST
 * @param n
 *            <code>n &ge; 0</code>
 * @return
 */
private IExpr expandPower(final IAST plusAST, final int n) {
	if (n == 1) {
		IExpr temp = expandPlus(plusAST);
		if (temp.isPresent()) {
			return temp;
		}
		addExpanded(plusAST);
		return plusAST;
	}
	if (n == 0) {
		return F.C1;
	}

	int k = plusAST.argSize();
	long numberOfTerms = LongMath.binomial(n + k - 1, n);
	if (numberOfTerms > Integer.MAX_VALUE) {
		throw new ArithmeticException("");
	}
	final IASTAppendable expandedResult = F.ast(F.Plus, (int) numberOfTerms, false);
	Expand.NumberPartititon part = new Expand.NumberPartititon(plusAST, n, expandedResult);
	part.partition();
	return PlusOp.plus(expandedResult);
}
 
開發者ID:axkr,項目名稱:symja_android_library,代碼行數:33,代碼來源:Algebra.java

示例2: kCombinationCount

import com.google.common.math.LongMath; //導入方法依賴的package包/類
public static long kCombinationCount(int n, int k) {
    long result;
    if(k > n) {
        result = 0;
    } else {
      //result = LongMath.factorial(n) / LongMath.factorial(n - k);

//The formula below should be equal to the one above
        long combinationCount = LongMath.binomial(n, k);
        long permutationCount = LongMath.factorial(k);
        result = combinationCount * permutationCount;
    }
    return result;
}
 
開發者ID:SmartDataAnalytics,項目名稱:SubgraphIsomorphismIndex,代碼行數:15,代碼來源:ProblemMappingKPermutationsOfN.java

示例3: binomial

import com.google.common.math.LongMath; //導入方法依賴的package包/類
@Benchmark int binomial(int reps) {
  int tmp = 0;
  for (int i = 0; i < reps; i++) {
    int j = i & ARRAY_MASK;
    tmp += LongMath.binomial(binomialArguments[j][0], binomialArguments[j][1]);
  }
  return tmp;
}
 
開發者ID:sander120786,項目名稱:guava-libraries,代碼行數:9,代碼來源:LongMathBenchmark.java

示例4: binomialCoefficient

import com.google.common.math.LongMath; //導入方法依賴的package包/類
@Override
public long binomialCoefficient(int n, int k) {
  return LongMath.binomial(n, k);
}
 
開發者ID:sander120786,項目名稱:guava-libraries,代碼行數:5,代碼來源:ApacheBenchmark.java


注:本文中的com.google.common.math.LongMath.binomial方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。