Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách tính hoán vị (permutation) và tổ hợp (combination) bằng SciPy trong Python

Thư viện SciPy cung cấp hàm scipy.special.perm và scipy.special.comb để tính hoán vị và tổ hợp chính xác.

Hoán vị (Permutation) - P(n, k)

Số cách sắp xếp k phần tử từ n phần tử (thứ tự quan trọng).

from scipy.special import perm

# Cú pháp: perm(N, k, exact=True)
my_perm = perm(6, 2, exact=True)
print("Hoán vị P(6,2) =", my_perm)  # Output: 30

exact=True trả về số nguyên chính xác (Python int), False trả về float xấp xỉ.

Tổ hợp (Combination) - C(n, k)

Số cách chọn k phần tử từ n phần tử (không quan tâm thứ tự).

from scipy.special import comb

my_comb = comb(6, 2, exact=True)
print("Tổ hợp C(6,2) =", my_comb)  # Output: 15

Công thức toán học

  • P(n,k) = n! / (n-k)!
  • C(n,k) = n! / (k! (n-k)!)

Ứng dụng

Dùng trong xác suất, thống kê, tổ hợp, thuật toán sinh cấu hình.