In deze tutorial leren we hoe we de permutatie en combinatie van bepaalde gegevens kunnen verkrijgen met behulp van Python. We zullen het ingebouwde Python-pakket gebruiken om de permutatie en combinatie van een bepaald getal te vinden.
Permutatie en combinatie zijn een essentieel onderdeel in de wiskunde. Python biedt de itertools-bibliotheek met ingebouwde functies om permutatie en combinatie te berekenen.
Importeren van de vereiste bibliotheek
Om de permutatie en combinatie te berekenen, moeten we de itertools-bibliotheek importeren. We kunnen het importeren met behulp van de onderstaande opdracht.
import itertools
De bovenstaande verklaring importeert de itertools-bibliotheek en vormt een pad naar zijn functie.
Nu moeten we de lijst met een reeks als invoer maken. Deze lijst met invoer retourneert de tuple die bestaat uit permutatie en combinatie. We kunnen ook de lengte van de permutatie en combinatie instellen.
mijn levende krekel
Permutatie
Een permutatie is een arrangement van een set waarbij de volgorde er wel toe doet. Python itertools-module biedt ingebouwde permutatie() methode om de permutatie te vinden. Laten we het volgende voorbeeld begrijpen.
Voorbeeld -
from itertools import permutations seq = permutations(['1','2','3']) print(seq) for p in list(seq): print(p)
Uitgang:
('1', '2', '3') ('1', '3', '2') ('2', '1', '3') ('2', '3', '1') ('3', '1', '2') ('3', '2', '1')
In de bovenstaande code hebben we de itertools-module geïmporteerd. Wij belden de permutatie() methode die string als argument neemt en een itertools-object levert. Het is noodzakelijk om for-lus te gebruiken om elke permutatie te krijgen.
vergelijk met strings in Java
Laten we twee sets permutaties nemen.
Voorbeeld - 2
from itertools import permutations seq = permutations(['A','B']) for p in list(seq): print(p)
Uitgang:
Java is leeg
('A', 'B') ('A', 'C') ('B', 'C')
Voorbeeld - 3
from itertools import permutations list1 = [1, 2, 3, 4] seq = permutations(list1) print(seq) for p in list(seq): print(p)
Uitgang:
(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)
In de bovenstaande code hebben we de combinatie van het meervoudige gehele getal.
Permutatie van de vaste lengte
We kunnen de permutatie van de set met vaste lengte berekenen, waarbij we slechts een bepaald aantal van elke elementpermutatie nemen. Laten we het volgende voorbeeld begrijpen.
Voorbeeld -
from itertools import permutations seq = permutations(['H', 'e', 'l', 'l', 'o'], 3) for p in list(seq): print(p)
Uitgang:
('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')
In de bovenstaande code hebben we de vaste permutatie berekend door lengte als twee door te geven.
tekenreeks naar char java
Combinatie van snaar
Combinatie is een verzameling van het element waarbij de volgorde er niet toe doet. Python itertools module biedt de combinatie() methode om de combinatie van gegeven gegevens te berekenen. We kunnen de combinatie van een string berekenen. Laten we het volgende voorbeeld begrijpen.
Voorbeeld -
import itertools seq = 'ABC' com_seq = itertools.combinations(seq, 2) for c in com_seq: print(c)
Uitgang:
('A', 'B') ('A', 'C') ('B', 'C')
Combinatie met vervanging
De itertools-module bestaat uit een andere methode genaamd combinatie_met_vervanging() waarbij ook rekening wordt gehouden met de combinatie van een getal zelf. Laten we het voorbeeld ervan begrijpen.
int omzetten naar dubbele java
Combinatie van numerieke set
from itertools import combinations_with_replacement com = combinations_with_replacement(['J', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't'], 2) #Print the list of combinations for c in list(com): print(c)
Uitgang:
('J', 'J') ('J', 'a') ('J', 'v') ('J', 'a') ('J', 't') ('J', 'p') ('J', 'o') ('J', 'i') ('J', 'n') ('J', 't') ('a', 'a') ('a', 'v') ('a', 'a') ('a', 't') ('a', 'p') ('a', 'o') ('a', 'i') ('a', 'n') ('a', 't') ('v', 'v') ('v', 'a') ('v', 't') ('v', 'p') ('v', 'o') ('v', 'i') ('v', 'n') ('v', 't') ('a', 'a') ('a', 't') ('a', 'p') ('a', 'o') ('a', 'i') ('a', 'n') ('a', 't') ('t', 't') ('t', 'p') ('t', 'o') ('t', 'i') ('t', 'n') ('t', 't') ('p', 'p') ('p', 'o') ('p', 'i') ('p', 'n') ('p', 't') ('o', 'o') ('o', 'i') ('o', 'n') ('o', 't') ('i', 'i') ('i', 'n') ('i', 't') ('n', 'n') ('n', 't') ('t', 't')
Combinatie van numerieke set
Als de gegeven invoer in de gesorteerde volgorde staat, worden de combinatietupels in gesorteerde volgorde geretourneerd. Laten we het volgende voorbeeld begrijpen.
Voorbeeld -
import itertools v = [1, 2, 3, 4] com_seq = itertools.combinations_with_replacement(v, 3) for i in com_seq: print(i)
Uitgang:
(1, 1, 1) (1, 1, 2) (1, 1, 3) (1, 1, 4) (1, 2, 2) (1, 2, 3) (1, 2, 4) (1, 3, 3) (1, 3, 4) (1, 4, 4) (2, 2, 2) (2, 2, 3) (2, 2, 4) (2, 3, 3) (2, 3, 4) (2, 4, 4) (3, 3, 3) (3, 3, 4) (3, 4, 4) (4, 4, 4)
In deze tutorial hebben we de itertools-module besproken om de permutatie en combinatie van de gegeven gegevens te vinden met behulp van het Python-script.