Python bestilt sett
Vi skal lære om hvordan vi kan lage rekkefølgesettet ved å bruke forskjellige metoder ved å bruke Python. Et bestilt sett er en datastruktur der datarekkefølgen kan bevares, og den brukes når vi krever at posisjonen til data forblir fast i den rekkefølgen vi har satt inn. Det skal bemerkes at, Vi er i stand til å iterere det bestilte settet, noe som betyr at det bestilte settet når vi erklærer at posisjonen til verdien er fast. Men i settet vil du få en abonnentfeil mens du itererer fordi posisjoner ikke er faste i settet.
Eksempel:
input_dataSet = {Prince, Aditya, Praveer, Shiv}
Utgang ved uordnet sett: {Aditya, Prince, Shiv, Praveer}, Det kan være tilfeldig plassering på din side
Utgang ved bestilt sett: {Prince, Aditya, Praveer, Shiv}
Forklaring: Som du vet i Python hvis du skriver ut dette settet mer én gang enn, hver gang vil du få tilfeldig plassering av elementene for samme datasett.
Men i tilfelle bestilt sett vil du få det samme datasettet hver gang i samme rekkefølge du hadde satt inn elementer.
Det er tre metoder for å lage de bestilte settene i Python:
- Ved å bruke en ordbok data struktur
- Ved å bruke liste data struktur
- Ved å bruke den bestilte settmodulen (eller klassen)
Bestilt sett ved hjelp av ordbokens datastruktur
Vi kan bruke ordbokdatastrukturen til å lage det ordnede settet fordi ordboken i seg selv er den ordnede datastrukturen der vi vil bruke settelementer som nøkler fordi nøkler er unike i ordboken og på verdiensted kan vi lage den tomme strengen. La oss ta en titt på implementeringen som forklart nedenfor:
Python3
# Creation of ordered set using the dict data structure> dictionary> => {> 'Prince'> : '> ', '> Aditya> ': '> ',> > 'Praveer'> : '> ', '> Prince> ': '> ', '> Shiv> ': '> '}> print> (dictionary)> # For accessing only keys from the dictionary> for> key> in> dictionary.keys():> > print> (key, end> => ' '> )> |
Produksjon:
{'Prince': '', 'Aditya': '', 'Praveer': '', 'Shiv': ''} Prince Aditya Praveer Shiv Bestilt sett ved hjelp av listedatastrukturen
Vi kan bruke listedatastrukturen til å lage rekkefølgesettet ved å bruke å fjerne dupliserte elementer fra det. La oss ta en titt på implementeringen som forklart nedenfor:
Python3
def> removeduplicate(data):> > countdict> => {}> > for> element> in> data:> > if> element> in> countdict.keys():> > > # increasing the count if the key(or element)> > # is already in the dictionary> > countdict[element]> +> => 1> > else> :> > # inserting the element as key with count = 1> > countdict[element]> => 1> > data.clear()> > for> key> in> countdict.keys():> > data.append(key)> dataItem> => [> 'Prince'> ,> 'Aditya'> ,> 'Praveer'> ,> 'Prince'> ,> 'Aditya'> ,> 'Shiv'> ]> print> (> 'Before removing duplicate elements from dataItems'> , dataItem)> removeduplicate(dataItem)> print> (> 'Created ordered set by removing duplicate elements'> , dataItem)> |
Produksjon:
Before removing duplicate elements from dataItems ['Prince', 'Aditya', 'Praveer', 'Prince', 'Aditya', 'Shiv'] Created ordered set by removing duplicate elements ['Prince', 'Aditya', 'Praveer', 'Shiv']
Bestilt sett med den bestilte settmodulen (eller klassen)
Som standard har du et uordnet sett i Python, men for å lage det bestilte settet må du installere modulen som heter ordered-set by pip-pakkeinstallasjonsprogrammet som nevnt nedenfor:
Hvordan installere den bestilte settmodulen
Ved å bruke pip-pakkeinstallasjonsprogrammet laster du ned den bestilte modulen som nevnt nedenfor:-
pip install ordered_set
Syntaks for orderedSet:
orderedSet(Listname)
Eksempel:
Nå, for mer avklaring, la oss iterere det bestilte settet fordi settet ikke kan itereres som nevnt nedenfor:
Python3
from> ordered_set> import> OrderedSet> createOrderedSet> => OrderedSet(> > [> 'GFG'> ,> 'is'> ,> 'an'> ,> 'Excellent'> ,> > 'Excellent'> ,> 'platform'> ])> print> (createOrderedSet)> # we are able to iterate it similar to list data type> for> index> in> range> (> len> (createOrderedSet)):> > print> (createOrderedSet[index], end> => ' '> )> |
Produksjon:
OrderedSet(['GFG', 'is', 'an', 'Excellent', 'platform']) GFG is an Excellent platform
Tidskompleksitet: O(n), hvor n er antall elementer i det bestilte settet
Hjelpemellomrom: O(n) , hvor n er antall elementer i det bestilte settet