A binomial coefficient, n choose k formula, is also known as combinations formula, and is defined as
Observe recursive relationship from definition, C(n, k) = (n / k) x C(n - 1, k - 1), create recurisive function calls. There is another recursive relatioship for C(n, k), drived from Pascal's triangle, C(n, k) = C(n-1, k-1) + C(n-1, k), C(n, 0) = C(n, n) = 1.
def binomial(n, k):
if (n < 0 or n < k):
return 0
if (k == 0 or k == n):
return 1
return (float(n) / k) * binomial(n - 1, k - 1)
n = 10
k = 5
print(binomial(n, k))
function binomial(n, k) {
if (n < 0 || n < k) {
return 0;
}
if (k === 0 || k === n) {
return 1;
}
return (n / k) * binomial(n - 1, k - 1);
}
const n = 10;
const k = 5;
console.log(binomial(n, k));