Dowiemy się, w jaki sposób możemy utworzyć zestaw kolejności, używając różnych metod przy użyciu Pythona. Zbiór uporządkowany to struktura danych, w której można zachować kolejność danych i stosuje się ją, gdy wymagamy, aby pozycja danych pozostała stała we wstawionej kolejności. Należy zauważyć, że Jesteśmy w stanie iterować uporządkowany zbiór, co oznacza, że uporządkowany zbiór po zadeklarowaniu pozycji wartości jest stały. Ale w zestawie podczas iteracji pojawi się błąd subskrybowalny, ponieważ pozycje w zestawie nie są ustalone.
Przykład:
zestaw_danych_wejściowych = {Książę, Aditya, Praveer, Shiv}
Dane wyjściowe w przypadku zestawu nieuporządkowanego: {Aditya, Prince, Shiv, Praveer}, może to być losowa pozycja po twojej stronie
Dane wyjściowe w przypadku zamówionego zestawu: {Książę, Aditya, Praveer, Shiv}
Wyjaśnienie: Jak wiesz w Pythonie, jeśli wydrukujesz ten zestaw więcej niż jeden raz, za każdym razem otrzymasz losowe rozmieszczenie elementów w tym samym zestawie danych.
Ale w przypadku zestawu zamówionego otrzymasz ten sam zestaw danych za każdym razem w tej samej kolejności, w jakiej wstawiałeś elementy.
Istnieją trzy metody tworzenia uporządkowanych zbiorów w Pythonie:
- Używając A słownik struktura danych
- Korzystając z lista struktura danych
- Korzystając z zamówionego modułu zestawu (lub klasy)
Zestaw uporządkowany przy użyciu słownikowej struktury danych
Możemy użyć słownikowej struktury danych do stworzenia uporządkowanego zbioru, ponieważ słownik sam w sobie jest uporządkowaną strukturą danych, w której będziemy używać elementów zestawu jako kluczy, ponieważ klucze są unikalne w słowniku i w miejscu wartości możemy utworzyć pusty ciąg znaków. Przyjrzyjmy się implementacji, jak wyjaśniono poniżej:
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>=>' '>)> |
>
lista posortowana Java
>
Wyjście:
{'Prince': '', 'Aditya': '', 'Praveer': '', 'Shiv': ''} Prince Aditya Praveer Shiv> Uporządkowany zestaw przy użyciu listowej struktury danych
Listową strukturę danych możemy wykorzystać do stworzenia zestawu porządkowego, usuwając z niego zduplikowane elementy. Przyjrzyjmy się implementacji, jak wyjaśniono poniżej:
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)> |
>
>
Wyjście:
Before removing duplicate elements from dataItems ['Prince', 'Aditya', 'Praveer', 'Prince', 'Aditya', 'Shiv'] Created ordered set by removing duplicate elements ['Prince', 'Aditya', 'Praveer', 'Shiv']>
Zamówiony zestaw za pomocą modułu (lub klasy) zamówionego zestawu
Domyślnie masz nieuporządkowany zestaw w Pythonie, ale aby utworzyć uporządkowany zestaw, będziesz musiał zainstalować moduł o nazwie Order-Set przez instalatora pakietu pip, jak wspomniano poniżej:
Jak zainstalować zamówiony moduł zestawu
Korzystając z instalatora pakietu pip, pobierz moduł zamówionego zestawu, jak wspomniano poniżej: -
pip install ordered_set>
Składnia uporządkowanego zestawu:
orderedSet(Listname)>
Przykład:
Teraz dla większego wyjaśnienia przeprowadźmy iterację uporządkowanego zbioru, ponieważ zbioru nie można iterować, jak wspomniano poniżej:
Python3
mój krykiet na żywo
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>=>' '>)> |
>
>
Wyjście:
OrderedSet(['GFG', 'is', 'an', 'Excellent', 'platform']) GFG is an Excellent platform>
Złożoność czasowa: O(n), gdzie n jest liczbą elementów w zbiorze uporządkowanym
Przestrzeń pomocnicza: O(n) , gdzie n jest liczbą elementów w zbiorze uporządkowanym