logo

Упорядкований набір Python

Ми збираємося дізнатися про те, як ми можемо створити набір порядку за допомогою різних методів за допомогою Python. Упорядкований набір — це структура даних, у якій порядок даних може бути збережений, і він використовується, коли нам потрібно, щоб позиція даних залишалася фіксованою в порядку, який ми вставили. Слід зазначити, що Ми можемо повторити впорядкований набір, що означає, що впорядкований набір, як тільки ми оголосимо положення значення фіксованим. Але в наборі ви отримаєте помилку підписки під час ітерації, оскільки позиції в наборі не фіксовані.

приклад:



input_dataSet = {Prince, Aditya, Praveer, Shiv}

Вихід у випадку невпорядкованої множини: {Aditya, Prince, Shiv, Praveer}, це може бути випадкова позиція на вашому боці

Вихід у разі впорядкованого набору: {Prince, Aditya, Praveer, Shiv}



Пояснення: Як ви знаєте в Python, якщо ви друкуєте цей набір кілька разів, щоразу ви отримуватимете випадкове розташування елементів для того самого набору даних.

Але у випадку впорядкованого набору ви отримуватимете той самий набір даних кожного разу, коли в такому самому порядку ви вставляли елементи.

Існує три методи створення впорядкованих наборів у Python:



  • Використовуючи a словник структура даних
  • За допомогою список структура даних
  • Використовуючи впорядкований модуль (або клас)

Упорядкований набір із використанням структури даних словника

Ми можемо використовувати структуру даних словника для створення впорядкованого набору, оскільки словник сам по собі є впорядкованою структурою даних, у якій ми будемо використовувати елементи набору як ключі, оскільки ключі унікальні в словнику, і на місці значення ми можемо створити порожній рядок. Давайте розглянемо реалізацію, як описано нижче:

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

>

np padding
>

Вихід:

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

Упорядкований набір із використанням структури даних списку

Ми можемо використовувати структуру даних списку, щоб створити набір порядку, видаливши з нього повторювані елементи. Давайте розглянемо реалізацію, як описано нижче:

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

>

>

Вихід:

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

Упорядкований набір з використанням модуля (або класу) впорядкованого набору

За замовчуванням у вас є невпорядкований набір у Python, але для створення впорядкованого набору вам доведеться встановити модуль під назвою ordered-set за допомогою інсталятора пакету pip, як зазначено нижче:

Як встановити замовлений набірний модуль

Використовуючи програму встановлення пакетів pip, завантажте модуль упорядкованого набору, як зазначено нижче:-

pip install ordered_set>

Синтаксис orderedSet:

orderedSet(Listname)>

приклад:

Тепер, для більшого пояснення, давайте повторимо впорядкований набір, оскільки набір не можна повторити, як зазначено нижче:

Python3




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

>

>

Вихід:

актор говінда
OrderedSet(['GFG', 'is', 'an', 'Excellent', 'platform']) GFG is an Excellent platform>

Часова складність: O(n), де n – кількість елементів у впорядкованому наборі

Допоміжний простір: O(n) , де n – кількість елементів у впорядкованому наборі