Python의 이항 계수
Shivam Arora
2023년10월10일
-
scipy
모듈을 사용하여 Python에서 이항 계수 계산 -
math.comb()
함수를 사용하여 Python에서 이항 계수 계산 -
operator
모듈을 사용하여 Python에서 이항 계수 계산 -
math.fact()
함수를 사용하여 Python에서 이항 계수 계산
수학적으로 말하면, 이항 계수는 n
개 항목 집합을 형성하는 데 사용할 수 있는 항목 수 r
개의 조합 수입니다. 또는 이 계수는 정렬되지 않은 결과를 선택하는 방법의 수라고 말할 수 있습니다 가능성으로부터의 길.
이 기사에서는 Python에서 이항 계수를 계산합니다.
scipy
모듈을 사용하여 Python에서 이항 계수 계산
SciPy에는 이항 계수를 계산하는 두 가지 방법이 있습니다. 첫 번째 함수는 scipy.special.binom()
이라고 합니다. 이 함수는 일반적으로 큰 값을 효율적으로 처리합니다.
예를 들어,
import scipy.special
print(scipy.special.binom(10, 5))
출력:
252.0
이항 계수를 반환하는 두 번째 함수는 scipy.special.comb()
입니다.
예를 들어,
import scipy.special
print(scipy.special.comb(10, 5))
출력:
252.0
math.comb()
함수를 사용하여 Python에서 이항 계수 계산
math
모듈의 comb()
함수는 본질적으로 이항 계수와 동일한 공식을 갖는 주어진 값의 조합을 반환합니다. 이 방법은 최신 버전의 Python 3.8 이상에 추가된 것입니다.
예를 들어,
import math
print(math.comb(10, 5))
출력:
252
operator
모듈을 사용하여 Python에서 이항 계수 계산
이전 버전의 Python에서는 math.factorial
이 없으므로 사용할 수 없습니다. 이를 보상하고 훨씬 더 짧은 시간에 출력을 생성하기 위해 math
및 operator
모듈을 함께 사용할 수 있습니다.
람다 함수 곱은 숫자의 곱을 얻기 위해 operator.mul
으로 생성됩니다.
예를 들어,
import math
import operator
from functools import reduce
def product(m, n):
return reduce(operator.mul, range(m, n + 1), 1)
x = 10
y = 5
product(y + 1, x) / product(1, x - y)
출력:
252
math.fact()
함수를 사용하여 Python에서 이항 계수 계산
math
모듈의 fact()
함수를 사용하여 이항 계수 계산을 위한 수학 공식을 구현할 수 있습니다.
아래 코드를 참조하십시오.
from math import factorial as fact
def binomial(n, r):
return fac(n) // fac(r) // fac(n - r)
print(binomial(10, 5))
출력:
252