logo

Python tilattu sarja

Aiomme oppia kuinka voimme luoda järjestysjoukon eri menetelmillä Pythonilla. Järjestetty joukko on tietorakenne, jossa tietojärjestys voidaan säilyttää ja sitä käytetään, kun vaadimme tietojen sijainnin pysyvän kiinteänä lisäämässämme järjestyksessä. On huomattava, että Pystymme iteroimaan järjestetyn joukon, mikä tarkoittaa tilattua joukkoa, kun olemme ilmoittaneet arvon sijainnin olevan kiinteä. Mutta sarjassa saat tilattavan virheen iteroitaessa, koska paikat eivät ole kiinteitä sarjassa.

Esimerkki:



input_dataSet = {Prinssi, Aditya, Praveer, Shiv}

Tulostus järjestämättömän sarjan tapauksessa: {Aditya, Prince, Shiv, Praveer}, Se voi olla satunnainen sijainti puolellasi

Tulos tilatun sarjan tapauksessa: {Prinssi, Aditya, Praveer, Shiv}



Selitys: Kuten Pythonissa tiedät, jos tulostat tämän joukon useammin kuin kerran, saat aina saman tietojoukon kohteiden satunnaisen sijainnin.

Mutta tilatun sarjan tapauksessa saat saman tietojoukon joka kerta samassa järjestyksessä kuin olet lisännyt tuotteet.

Pythonissa on kolme tapaa luoda järjestetyt joukot:



  • Käyttämällä a sanakirja tietorakenne
  • Käyttämällä lista tietorakenne
  • Käyttämällä tilattua sarjamoduulia (tai luokkaa)

Tilattu joukko sanakirjan tietorakenteen avulla

Sanakirjan tietorakennetta voimme käyttää järjestetyn joukon luomiseen, koska sanakirja itsessään on järjestetty tietorakenne, jossa käytämme joukkokohteita avaimina, koska avaimet ovat sanakirjassa ainutlaatuisia ja arvon paikkaan voimme luoda tyhjän merkkijonon. Tarkastellaan toteutusta alla kuvatulla tavalla:

Python 3




# 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>=>' '>)>

>

python __name__
>

Lähtö:

{'Prince': '', 'Aditya': '', 'Praveer': '', 'Shiv': ''} Prince Aditya Praveer Shiv>

Tilattu sarja käyttäen listatietorakennetta

Voimme käyttää listatietorakennetta tilausjoukon luomiseen poistamalla siitä päällekkäiset elementit. Tarkastellaan toteutusta alla kuvatulla tavalla:

Python 3




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)>

javascript onclick
>

>

Lähtö:

Before removing duplicate elements from dataItems ['Prince', 'Aditya', 'Praveer', 'Prince', 'Aditya', 'Shiv'] Created ordered set by removing duplicate elements ['Prince', 'Aditya', 'Praveer', 'Shiv']>

Tilattu sarja käyttämällä tilattua sarjamoduulia (tai luokkaa)

Oletusarvoisesti sinulla on järjestämätön joukko Pythonissa, mutta tilatun joukon luomiseksi sinun on asennettava moduuli nimeltä ordered-set by pip paketin asennusohjelma alla mainitulla tavalla:

Tilatun sarjamoduulin asentaminen

Lataa tilattu moduuli alla kuvatulla tavalla käyttämällä pip-paketin asennusohjelmaa: -

pip install ordered_set>

OrderedSetin syntaksi:

orderedSet(Listname)>

Esimerkki:

Selvyyden vuoksi toistetaan nyt tilattu joukko, koska sarjaa ei voida iteroida alla mainitulla tavalla:

Python 3




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>=>' '>)>

>

>

Lähtö:

OrderedSet(['GFG', 'is', 'an', 'Excellent', 'platform']) GFG is an Excellent platform>

Aika monimutkaisuus: O(n), missä n on järjestetyn joukon elementtien lukumäärä

Aputila: O(n) , jossa n on järjestetyn joukon elementtien lukumäärä