logo

Ensemble ordonné Python

Nous allons apprendre comment créer l'ensemble de commandes en utilisant différentes méthodes utilisant Python. Un ensemble ordonné est une structure de données dans laquelle l'ordre des données peut être conservé et il est utilisé lorsque nous avons besoin que la position des données reste fixe dans l'ordre que nous avons inséré. Il est à noter que, Nous sommes capables de parcourir l'ensemble ordonné, ce qui signifie que l'ensemble ordonné une fois que nous déclarons que la position de la valeur est fixe. Mais dans l'ensemble, vous obtiendrez une erreur d'abonnement lors de l'itération car les positions ne sont pas fixes dans l'ensemble.

Exemple:



jeu de données d'entrée = {Prince, Aditya, Praveer, Shiv}

Sortie en cas d'ensemble non ordonné : {Aditya, Prince, Shiv, Praveer}, cela peut être une position aléatoire de votre côté

Sortie en cas d'ensemble commandé : {Prince, Aditya, Praveer, Shiv}



Explication: Comme vous le savez en Python, si vous imprimez cet ensemble plus d'une fois, vous obtiendrez à chaque fois la position aléatoire des éléments pour le même ensemble de données.

Mais dans le cas d'un ensemble ordonné, vous obtiendrez le même ensemble de données à chaque fois que vous aurez inséré des éléments dans le même ordre.

Il existe trois méthodes pour créer les ensembles ordonnés en Python :



  • En utilisant un dictionnaire Structure de données
  • En utilisant le liste Structure de données
  • En utilisant le module (ou la classe) d'ensemble ordonné

Ensemble ordonné utilisant la structure de données du dictionnaire

Nous pouvons utiliser la structure de données du dictionnaire pour créer l'ensemble ordonné car le dictionnaire est lui-même la structure de données ordonnée dans laquelle nous utiliserons les éléments de l'ensemble comme clés car les clés sont uniques dans le dictionnaire et à la place de la valeur, nous pouvons créer la chaîne vide. Jetons un coup d'œil à la mise en œuvre comme expliqué ci-dessous :

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

>

noyau Java
>

Sortir:

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

Ensemble ordonné utilisant la structure de données de liste

Nous pouvons utiliser la structure de données de liste pour créer l'ensemble de commandes en supprimant les éléments en double. Jetons un coup d'œil à la mise en œuvre comme expliqué ci-dessous :

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

>

>

Sortir:

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

Ensemble ordonné à l'aide du module (ou classe) d'ensemble ordonné

Par défaut, vous disposez d'un ensemble non ordonné en Python mais pour créer l'ensemble ordonné, vous devrez installer le module nommé Ordonné-set par le programme d'installation du package pip comme mentionné ci-dessous :

Comment installer le module d'ensemble commandé

En utilisant le programme d'installation du package pip, téléchargez le module d'ensemble ordonné comme mentionné ci-dessous : -

pip install ordered_set>

Syntaxe de orderSet :

orderedSet(Listname)>

Exemple:

Maintenant, pour plus de précisions, itérons l'ensemble ordonné car l'ensemble ne peut pas être itéré comme mentionné ci-dessous :

Python3




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

>

>

Sortir:

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

Complexité temporelle : O(n), où n est le nombre d'éléments dans l'ensemble ordonné

Espace auxiliaire : O(n) , où n est le nombre d'éléments dans l'ensemble ordonné