logo

Conjunt ordenat Python

Aprendrem sobre com podem crear el conjunt d'ordres utilitzant diferents mètodes amb Python. Un conjunt ordenat és una estructura de dades en la qual es pot conservar l'ordre de les dades i s'utilitza quan necessitem que la posició de les dades es mantingui fixa en l'ordre que hem inserit. Cal destacar que, Podem repetir el conjunt ordenat, cosa que significa que el conjunt ordenat un cop declarem que la posició del valor és fixa. Però al conjunt, obtindreu un error de subscripció durant la iteració perquè les posicions no estan fixades al conjunt.

Exemple:



input_dataSet = {Prince, Aditya, Praveer, Shiv}

Sortida en cas de conjunt no ordenat: {Aditya, Prince, Shiv, Praveer}, Pot ser una posició aleatòria al vostre costat

Sortida en cas de conjunt comandat: {Prince, Aditya, Praveer, Shiv}



Explicació: Com ja sabeu a Python, si imprimiu aquest conjunt més d'una vegada, cada vegada obtindreu la posició aleatòria dels elements per al mateix conjunt de dades.

Però en cas d'un conjunt ordenat, obtindreu el mateix conjunt de dades cada vegada en el mateix ordre que heu inserit els elements.

Hi ha tres mètodes per crear els conjunts ordenats a Python:



  • Mitjançant l'ús d'a diccionari estructura de dades
  • Mitjançant l'ús de llista estructura de dades
  • Mitjançant l'ús del mòdul (o classe) de conjunt ordenat

Conjunt ordenat mitjançant l'estructura de dades del diccionari

Podem utilitzar l'estructura de dades del diccionari per crear el conjunt ordenat perquè el diccionari és en si mateix l'estructura de dades ordenada en la qual utilitzarem elements de conjunt com a claus perquè les claus són úniques al diccionari i al lloc de valor podem crear la cadena buida. Fem una ullada a la implementació tal com s'explica a continuació:

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

>

jquery aquest clic
>

Sortida:

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

Conjunt ordenat mitjançant l'estructura de dades de llista

Podem utilitzar l'estructura de dades de llista per crear el conjunt d'ordres mitjançant l'eliminació dels elements duplicats. Fem una ullada a la implementació tal com s'explica a continuació:

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

>

>

Sortida:

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

Conjunt ordenat mitjançant el mòdul (o classe) del conjunt ordenat

Per defecte, teniu un conjunt no ordenat a Python, però per crear el conjunt ordenat haureu d'instal·lar el mòdul anomenat ordered-set per l'instal·lador de paquets pip tal com s'esmenta a continuació:

Com instal·lar el mòdul de conjunt comandat

Mitjançant l'instal·lador del paquet pip, descarregueu el mòdul de conjunt ordenat tal com s'esmenta a continuació:

pip install ordered_set>

Sintaxi de orderedSet:

orderedSet(Listname)>

Exemple:

Ara, per a més aclariments, iterem el conjunt ordenat perquè el conjunt no es pot iterar com s'esmenta a continuació:

Python 3




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

>

>

Sortida:

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

Complexitat temporal: O(n), on n és el nombre d'elements del conjunt ordenat

Espai auxiliar: O(n) , on n és el nombre d'elements del conjunt ordenat