Python의 이항 계수

Shivam Arora 2023년10월10일
  1. scipy 모듈을 사용하여 Python에서 이항 계수 계산
  2. math.comb() 함수를 사용하여 Python에서 이항 계수 계산
  3. operator 모듈을 사용하여 Python에서 이항 계수 계산
  4. math.fact() 함수를 사용하여 Python에서 이항 계수 계산
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이 없으므로 사용할 수 없습니다. 이를 보상하고 훨씬 더 짧은 시간에 출력을 생성하기 위해 mathoperator 모듈을 함께 사용할 수 있습니다.

람다 함수 곱은 숫자의 곱을 얻기 위해 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

관련 문장 - Python Math