logo

Insieme ordinato Python

Impareremo come possiamo creare il set di ordini utilizzando diversi metodi utilizzando Python. Un insieme ordinato è una struttura dati in cui l'ordine dei dati può essere preservato e viene utilizzato quando richiediamo che la posizione dei dati rimanga fissa nell'ordine che abbiamo inserito. È da notare che, Siamo in grado di iterare l'insieme ordinato, ovvero l'insieme ordinato una volta che dichiariamo che la posizione del valore è fissa. Ma nel set, riceverai un errore di sottoscrizione durante l'iterazione perché le posizioni non sono fisse nel set.

Esempio:



input_dataSet = {Principe, Aditya, Praveer, Shiv}

Output in caso di insieme non ordinato: {Aditya, Prince, Shiv, Praveer}, può essere una posizione casuale dalla tua parte

Output in caso di set ordinato: {Prince, Aditya, Praveer, Shiv}



Spiegazione: Come sai in Python, se stampi questo set più volte, ogni volta otterrai la posizione casuale degli elementi per lo stesso set di dati.

Ma in caso di set ordinato otterrai lo stesso set di dati ogni volta che hai inserito gli elementi nello stesso ordine.

Esistono tre metodi per creare gli insiemi ordinati in Python:



  • Utilizzando a dizionario struttura dati
  • Utilizzando il elenco struttura dati
  • Utilizzando il modulo dell'insieme ordinato (o classe)

Insieme ordinato utilizzando la struttura dei dati del dizionario

Possiamo utilizzare la struttura dati del dizionario per creare l'insieme ordinato perché il dizionario è esso stesso la struttura dati ordinata in cui utilizzeremo gli elementi dell'insieme come chiavi perché le chiavi sono univoche nel dizionario e al posto del valore possiamo creare la stringa vuota. Diamo un’occhiata all’implementazione come spiegato di seguito:

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

>

Diana Ankudinova
>

Produzione:

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

Insieme ordinato utilizzando la struttura dei dati dell'elenco

Possiamo utilizzare la struttura dei dati dell'elenco per creare il set di ordini rimuovendo gli elementi duplicati da esso. Diamo un’occhiata all’implementazione come spiegato di seguito:

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

>

>

Produzione:

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

Insieme ordinato utilizzando il modulo dell'insieme ordinato (o classe)

Per impostazione predefinita, hai un set non ordinato in Python ma per creare il set ordinato dovrai installare il modulo denominato order-set dal programma di installazione del pacchetto pip come menzionato di seguito:

Come installare il modulo del set ordinato

Utilizzando il programma di installazione del pacchetto pip, scarica il modulo del set ordinato come indicato di seguito: -

pip install ordered_set>

Sintassi di orderSet:

orderedSet(Listname)>

Esempio:

Ora, per maggiori chiarimenti, iteriamo l'insieme ordinato perché l'insieme non può essere iterato come indicato di seguito:

Python3


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

>

>

Produzione:

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

Complessità temporale: O(n), dove n è il numero di elementi nell'insieme ordinato

Spazio ausiliario: O(n) , dove n è il numero di elementi nell'insieme ordinato