Hướng dẫn how to find permutations and combinations of a sequence in python? - làm thế nào để tìm hoán vị và kết hợp của một trình tự trong python?

Python cung cấp các phương pháp trực tiếp để tìm hoán vị và kết hợp một chuỗi. Các phương pháp này có mặt trong gói itertools.

Permutation  

Đầu tiên nhập gói ITERTOOLS để thực hiện phương thức hoán vị trong Python. Phương thức này lấy một danh sách làm đầu vào và trả về một danh sách đối tượng các bộ dữ liệu có chứa tất cả các hoán vị trong một biểu mẫu danh sách. & Nbsp; & nbsp;
 

Python3

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
3
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
4
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
5
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
6

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
7
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
8
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
9
(1, 2)
(1, 3)
(2, 3)
0
(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2221
(1, 2)
(1, 3)
(2, 3)
4
(1, 2)
(1, 3)
(2, 3)
5

(1, 2)
(1, 3)
(2, 3)
6
(1, 2)
(1, 3)
(2, 3)
7
(1, 2)
(1, 3)
(2, 3)
8
(1, 2)
(1, 3)
(2, 3)
9
(1, 2)
(1, 3)
(2, 3)
0

(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2
(1, 2)
(1, 3)
(2, 3)
3

Output:  

(1, 2, 3)
(1, 3, 2)
(2, 1, 3)
(2, 3, 1)
(3, 1, 2)
(3, 2, 1)

Nó tạo ra n! hoán vị nếu độ dài của chuỗi đầu vào là n. & nbsp; nếu muốn & nbsp; để có được hoán vị có độ dài l sau đó thực hiện nó theo cách này. & nbsp; & nbsp;
If want  to get permutations of length L then implement it in this way. 
 

Python3

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
3
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
4
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
5
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
6

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
7
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
8
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
9
(1, 2)
(1, 3)
(2, 3)
0
(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2221
(1, 2)
(1, 3)
(2, 3)
4
(1, 2)
(1, 3)
(2, 3)
5

(1, 2)
(1, 3)
(2, 3)
6
(1, 2)
(1, 3)
(2, 3)
7
(1, 2)
(1, 3)
(2, 3)
8
(1, 2)
(1, 3)
(2, 3)
9
(1, 2)
(1, 3)
(2, 3)
0

(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2
(1, 2)
(1, 3)
(2, 3)
3

Output: 

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)

Nó tạo ra n! hoán vị nếu độ dài của chuỗi đầu vào là n. & nbsp; nếu muốn & nbsp; để có được hoán vị có độ dài l sau đó thực hiện nó theo cách này. & nbsp; & nbsp;

Combination  

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
7
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
8
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
9
(1, 2)
(1, 3)
(2, 3)
0
(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2221
(1, 2)
(1, 3)
(2, 3)
4
(2, 1)
(2, 3)
(1, 3)
6
(1, 2)
(1, 3)
(2, 3)
222
 

Python3

Nó tạo ra ncr * r! hoán vị Nếu độ dài của chuỗi đầu vào là n và tham số đầu vào là r.

Phương thức này lấy một danh sách và đầu vào r làm đầu vào và trả về một danh sách đối tượng các bộ dữ liệu chứa tất cả các kết hợp có thể có của độ dài r trong một biểu mẫu danh sách. & Nbsp; & nbsp;

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
3
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
4
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
5
('1', '2', '3')
('1', '3', '2')
('2', '1', '3')
('2', '3', '1')
('3', '1', '2')
('3', '2', '1')
0

Các

Output:  

(1, 2)
(1, 3)
(2, 3)

(1, 2)
(1, 3)
(2, 3)
6
(1, 2)
(1, 3)
(2, 3)
7
(1, 2)
(1, 3)
(2, 3)
8
(1, 2)
(1, 3)
(2, 3)
9
('A', 'B')
('A', 'C')
('B', 'C')
6
 

Python3

(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2
('A', 'B')
('A', 'C')
('B', 'C')
9

1. Kết hợp được phát ra theo thứ tự sắp xếp từ vựng của đầu vào. Vì vậy, nếu danh sách đầu vào được sắp xếp, các bộ dữ liệu kết hợp sẽ được tạo theo thứ tự được sắp xếp. & Nbsp; & nbsp;

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
3
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
4
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
5
(1, 2, 3, 4)
(1, 2, 4, 3)
(1, 3, 2, 4)
(1, 3, 4, 2)
(1, 4, 2, 3)
(1, 4, 3, 2)
(2, 1, 3, 4)
(2, 1, 4, 3)
(2, 3, 1, 4)
(2, 3, 4, 1)
(2, 4, 1, 3)
(2, 4, 3, 1)
(3, 1, 2, 4)
(3, 1, 4, 2)
(3, 2, 1, 4)
(3, 2, 4, 1)
(3, 4, 1, 2)
(3, 4, 2, 1)
(4, 1, 2, 3)
(4, 1, 3, 2)
(4, 2, 1, 3)
(4, 2, 3, 1)
(4, 3, 1, 2)
(4, 3, 2, 1)
3

Các

Output: 

(1, 2)
(1, 3)
(2, 3)

(1, 2)
(1, 3)
(2, 3)
6
(1, 2)
(1, 3)
(2, 3)
7
(1, 2)
(1, 3)
(2, 3)
8
(1, 2)
(1, 3)
(2, 3)
9
('A', 'B')
('A', 'C')
('B', 'C')
6
 

Python3

(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2
('A', 'B')
('A', 'C')
('B', 'C')
9

1. Kết hợp được phát ra theo thứ tự sắp xếp từ vựng của đầu vào. Vì vậy, nếu danh sách đầu vào được sắp xếp, các bộ dữ liệu kết hợp sẽ được tạo theo thứ tự được sắp xếp. & Nbsp; & nbsp;

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
3
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
4
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
5
(1, 2, 3, 4)
(1, 2, 4, 3)
(1, 3, 2, 4)
(1, 3, 4, 2)
(1, 4, 2, 3)
(1, 4, 3, 2)
(2, 1, 3, 4)
(2, 1, 4, 3)
(2, 3, 1, 4)
(2, 3, 4, 1)
(2, 4, 1, 3)
(2, 4, 3, 1)
(3, 1, 2, 4)
(3, 1, 4, 2)
(3, 2, 1, 4)
(3, 2, 4, 1)
(3, 4, 1, 2)
(3, 4, 2, 1)
(4, 1, 2, 3)
(4, 1, 3, 2)
(4, 2, 1, 3)
(4, 2, 3, 1)
(4, 3, 1, 2)
(4, 3, 2, 1)
3

Các

Output: 

(2, 1)
(2, 3)
(1, 3)

(1, 2)
(1, 3)
(2, 3)
6
(1, 2)
(1, 3)
(2, 3)
7
(1, 2)
(1, 3)
(2, 3)
8
(1, 2)
(1, 3)
(2, 3)
9
('A', 'B')
('A', 'C')
('B', 'C')
6
 

Python3

(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2
('A', 'B')
('A', 'C')
('B', 'C')
9

1. Kết hợp được phát ra theo thứ tự sắp xếp từ vựng của đầu vào. Vì vậy, nếu danh sách đầu vào được sắp xếp, các bộ dữ liệu kết hợp sẽ được tạo theo thứ tự được sắp xếp. & Nbsp; & nbsp;

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
3
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
4
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
5
(1, 2, 3, 4)
(1, 2, 4, 3)
(1, 3, 2, 4)
(1, 3, 4, 2)
(1, 4, 2, 3)
(1, 4, 3, 2)
(2, 1, 3, 4)
(2, 1, 4, 3)
(2, 3, 1, 4)
(2, 3, 4, 1)
(2, 4, 1, 3)
(2, 4, 3, 1)
(3, 1, 2, 4)
(3, 1, 4, 2)
(3, 2, 1, 4)
(3, 2, 4, 1)
(3, 4, 1, 2)
(3, 4, 2, 1)
(4, 1, 2, 3)
(4, 1, 3, 2)
(4, 2, 1, 3)
(4, 2, 3, 1)
(4, 3, 1, 2)
(4, 3, 2, 1)
3

(1, 2)
(1, 3)
(2, 3)
1
(1, 2)
(1, 3)
(2, 3)
2
(1, 2)
(1, 3)
(2, 3)
3

Output:

(1, 1)
(1, 2)
(1, 3)
(2, 2)
(2, 3)
(3, 3) 

Trong hướng dẫn này, chúng tôi sẽ học cách có được hoán vị và kết hợp một dữ liệu nhất định bằng Python. Chúng tôi sẽ sử dụng gói Python Inbuilt để tìm sự hoán vị và kết hợp của một số nhất định.

Hoán vị và kết hợp là một phần thiết yếu trong toán học. Python cung cấp thư viện ITERTOOLS có các chức năng được xây dựng để tính toán hoán vị và kết hợp.

Nhập thư viện cần thiết

Để tính toán hoán vị và kết hợp, chúng ta cần nhập thư viện ITERTOOLS. Chúng ta có thể nhập nó bằng lệnh dưới đây.

Câu lệnh trên sẽ nhập thư viện ITERTOOLS và tạo thành một con đường đến chức năng của nó.

Bây giờ, chúng ta cần tạo danh sách một chuỗi dưới dạng đầu vào. Danh sách đầu vào này sẽ trả về tuple bao gồm hoán vị và kết hợp. Chúng ta cũng có thể đặt chiều dài của hoán vị và kết hợp.

Hoán vị

Một hoán vị là một sự sắp xếp của một bộ nơi đặt hàng có vấn đề. Mô -đun Python itertools cung cấp phương thức hoán vị () sẵn có để tìm hoán vị. Hãy hiểu ví dụ sau.permutation() method to find the permutation. Let's understand the following example.

Thí dụ -

Output:

('1', '2', '3')
('1', '3', '2')
('2', '1', '3')
('2', '3', '1')
('3', '1', '2')
('3', '2', '1')

Trong mã trên, chúng tôi đã nhập mô -đun ITERTOOLS. Chúng tôi đã gọi phương thức hoán vị () lấy chuỗi làm đối số và cung cấp một đối tượng itertools. Nó là cần thiết để sử dụng cho vòng lặp để có được mỗi hoán vị.permutation() method which takes string as an argument and provides an itertools object. It is necessary to use for loop to get the each permutation.

Hãy lấy hai bộ hoán vị.

Ví dụ - 2

Output:

('A', 'B')
('A', 'C')
('B', 'C')

Ví dụ - 3

Output:

(1, 2, 3, 4)
(1, 2, 4, 3)
(1, 3, 2, 4)
(1, 3, 4, 2)
(1, 4, 2, 3)
(1, 4, 3, 2)
(2, 1, 3, 4)
(2, 1, 4, 3)
(2, 3, 1, 4)
(2, 3, 4, 1)
(2, 4, 1, 3)
(2, 4, 3, 1)
(3, 1, 2, 4)
(3, 1, 4, 2)
(3, 2, 1, 4)
(3, 2, 4, 1)
(3, 4, 1, 2)
(3, 4, 2, 1)
(4, 1, 2, 3)
(4, 1, 3, 2)
(4, 2, 1, 3)
(4, 2, 3, 1)
(4, 3, 1, 2)
(4, 3, 2, 1)

Trong mã trên, chúng tôi đã có sự kết hợp của nhiều số nguyên.

Hoán vị của chiều dài cố định

Chúng ta có thể tính toán hoán vị của bộ chiều dài cố định trong đó chúng ta chỉ lấy một số lượng được chỉ định của mỗi hoán vị phần tử. Hãy hiểu ví dụ sau.

Thí dụ -

Output:

('H', 'e')
('H', 'l')
('H', 'l')
('H', 'o')
('e', 'H')
('e', 'l')
('e', 'l')
('e', 'o')
('l', 'H')
('l', 'e')
('l', 'l')
('l', 'o')
('l', 'H')
('l', 'e')
('l', 'l')
('l', 'o')
('o', 'H')
('o', 'e')
('o', 'l')
('o', 'l')

Trong mã trên, chúng tôi đã nhập mô -đun ITERTOOLS. Chúng tôi đã gọi phương thức hoán vị () lấy chuỗi làm đối số và cung cấp một đối tượng itertools. Nó là cần thiết để sử dụng cho vòng lặp để có được mỗi hoán vị.

Hãy lấy hai bộ hoán vị.

Ví dụ - 2itertools module provides the combination() method to calculate the combination of given data. We can calculate the combination of a string. Let's understand the following example.

Thí dụ -

Output:

('A', 'B')
('A', 'C')
('B', 'C')

Trong mã trên, chúng tôi đã nhập mô -đun ITERTOOLS. Chúng tôi đã gọi phương thức hoán vị () lấy chuỗi làm đối số và cung cấp một đối tượng itertools. Nó là cần thiết để sử dụng cho vòng lặp để có được mỗi hoán vị.

Hãy lấy hai bộ hoán vị.combination_with_replacement() which takes under consideration the combination of a number itself as well. Let's understand its example.

Ví dụ - 2

Output:

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
1

Ví dụ - 2

Ví dụ - 3

Thí dụ -

Output:

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
2

Trong mã trên, chúng tôi đã nhập mô -đun ITERTOOLS. Chúng tôi đã gọi phương thức hoán vị () lấy chuỗi làm đối số và cung cấp một đối tượng itertools. Nó là cần thiết để sử dụng cho vòng lặp để có được mỗi hoán vị.


Làm thế nào để bạn tìm thấy hoán vị và kết hợp trong Python?

Đầu tiên nhập gói ITERTOOLS để thực hiện phương thức hoán vị trong Python. Phương thức này lấy một danh sách làm đầu vào và trả về một danh sách đối tượng các bộ dữ liệu chứa tất cả các hoán vị trong một biểu mẫu danh sách.import itertools package to implement the permutations method in python. This method takes a list as an input and returns an object list of tuples that contain all permutations in a list form.

Làm thế nào để bạn giải quyết các hoán vị trong Python?

Toán học. Hàm perm () trong python được sử dụng để trả về số lượng hoán vị của k vật phẩm từ một nhóm N, tức là, nó giúp chúng ta tìm ra số cách chúng ta có thể chọn K vật phẩm từ n theo thứ tự và không có sự lặp lại . ....
Cú pháp.Toán học (n, k).
Thông số.....
Giá trị trả về.....

Làm thế nào để bạn tính toán các kết hợp trong Python?

Nếu chúng ta chọn K mọi thứ từ tổng số N tùy chọn và chúng ta không quan tâm theo thứ tự nào, thì tổng số kết hợp (số cách khác nhau để làm điều này) là: C (n, k) = (nk)= N! K! (N - K)!C(n,k)=(nk)=n!k! (n−k)!

Làm thế nào để Python tính toán NPR?

Chương trình Python..
nhập khẩu ;.
nval = int (input ("nhập giá trị của n:")) ;.
rval = int (input ("nhập giá trị của r:")) ;.
npr = math.factorial (n) /math.factorial (n-r) ;.
in ("npr =", npr) ;.