Python

Python Deque

Python Deque

Een deque betekent een wachtrij met twee uiteinden met toevoeging van elementen van elk uiteinde; gebruikers kunnen ook elementen van elk uiteinde verwijderen. Deze module komt uit de collectiebibliotheek en wordt geïmplementeerd met behulp van deze module. Het heeft over het algemeen de voorkeur boven de lijst waar we een snellere methode nodig hebben om bewerkingen toe te voegen. Het toevoegen en verwijderen kan vanaf beide containeruiteinden. Gebruikers kunnen de waarden in de deque toevoegen of ze van beide kanten verwijderen. Ze kunnen zelfs het hele deque omkeren. De tutorial behandelt alle mogelijke use-cases samen met uitgebreide voorbeelden voor het gemak van de gebruikers.

We gebruiken idealiter de nieuwste versie van Python voor implementatie, namelijk Python x3.8, maar als iemand niet over de nieuwste versie beschikt, kunnen ze deze zelfs in hun versies implementeren. Het zal vergelijkbare resultaten opleveren.

Vergelijking van Deque met List:

Deque is sneller voor het gebruik van de toevoeging aan het begin en het einde van de deque. Lijsten zijn sneller als het gaat om het toevoegen en verwijderen van elementen uit het midden van de lijst. In de lijst kunnen gebruikers index en waarden gebruiken om in lijsten in te voegen, terwijl we in deque deze aan de linker- of rechterkant kunnen toevoegen.

Deques lijken meer op wachtrijen en stapels. Ze ondersteunen ook thread-safe en zijn efficiënt in termen van geheugen. Pops van beide kanten van de deque zijn hetzelfde, i.e., O(1) in beide richtingen. Lijstobjecten ondersteunen bewerkingen. Lijsten zijn geoptimaliseerd voor veel snellere bewerkingen.

Deque is een dubbele linklijst met een veel groter geheugen dan een lijst. Het ondersteunt twee aanwijzers per knooppunt in plaats van één. Over het algemeen kan dit verschil worden genegeerd. Gebruikers kunnen aan beide uiteinden toevoegen en verschijnen in Deque.

Voorbeeld

Hier is een voorbeeld uitgevoerd door het importeren van deque. De code is een basisvoorbeeld dat kan worden gebruikt om de collecties te importeren, en gebruikers kunnen voor dit voorbeeld kiezen wanneer ze een deque willen importeren. De collecties importeren de deque en dan declareren we de deque in de volgende stap. Eindelijk, wanneer we het afdrukken om de waarde van onze uitvoer te bekijken.

>>> uit collecties import deque
>>> wachtrij = deque(['nummer','plaats','titel'])
>>> afdrukken (wachtrij)

Uitgang:De uitvoerwaarde van deque ziet er als volgt uit:

operaties van deque

Verschillende bewerkingen kunnen worden uitgevoerd in deque(). In deze sectie zullen we alle mogelijke bewerkingen illustreren die nuttig zullen zijn voor de gebruikers. Eerst bekijken we de importoptie die beschikbaar is voor het importeren van de collectie.

Collecties importeren

Een ander voorbeeld van het importeren van collecties wordt hieronder gegeven:

>>> collecties importeren
>>> DoubleEnded = collecties.deque([“maandag,”dinsdag”,”woensdag”])
>>> afdrukken (DoubleEnded)

Uitgang:Zodra u op enter tikt, verschijnt de uitvoer zoals hieronder toegevoegd:

Voeg waarde toe aan de rechterkant:

Om nu de waarde aan de rechterkant toe te voegen, gebruiken we de volgende invoerwaarde:. We zullen donderdag toevoegen aan de rechterkant van de wachtrij. De waarde wordt aan de rechterkant van de lijst toegevoegd.

>>> print("Toevoegen aan de rechterkant: ")
>>> Double Ended.toevoegen ("donderdag")
>>> afdrukken (DoubleEnded)


Uitgang:
Als u op Enter klikt, verschijnt de uitvoer zoals deze:

In het bovenstaande voorbeeld wordt de waarde toegevoegd aan de rechterkant van de lijst.

Waarde toevoegen aan de linkerkant

Om een ​​waarde in deque aan de linkerkant toe te voegen, gebruiken we de volgende invoerwaarde:. We voegen zondag toe aan de linkerkant van de wachtrij. De waarde wordt aan de linkerkant van de lijst toegevoegd.

>>> print("Toevoegen aan de linkerkant: ")
>>> Double Ended.toevoegen("zondag")
>>> afdrukken (DoubleEnded)


Uitgang:
Als u op Enter klikt, verschijnt de uitvoer zoals deze:

Hier in het voorbeeld wordt de waarde toegevoegd aan de linkerkant van de lijst.

Waarde van rechts verwijderen

Gebruikers kunnen de deque verwijderen om de waarde aan de rechterkant van de deque te verwijderen. Gebruikers kunnen voor deze optie kiezen om de relevante waarden uit de deque aan de rechterkant te verwijderen. Gebruik de volgende regels code:

>>> print("Verwijderen van rechts: ")
>>> Double Ended.knal()
>>> afdrukken (DoubleEnded)

Uitgang:Om de deque-uitvoer te bekijken die is bijgewerkt, drukt u op de enter-toets.

Hier wordt de waarde die voorheen aan de rechterkant van de deque stond, in ons geval donderdag, uit de deque verwijderd.

Waarde van links verwijderen

Om de waarde aan de linkerkant van de deque te verwijderen, moeten gebruikers de volgende regels code gebruiken:

>>> print("Waarde van links verwijderen: ")
>>> Double Ended.poplinks()
>>> afdrukken (DoubleEnded)

Uitgang:Om de deque-uitvoer te bekijken die is bijgewerkt, drukt u op de enter-toets.


Hier wordt de waarde die voorheen aan de linkerkant van de deque stond, zondag was, uit de deque verwijderd.

Het hele deque omkeren

Gebruik de volgende code om de hele deque om te keren:

>>> print("Het hele deque omkeren: ")
>>> Double Ended.omgekeerde()
>>> afdrukken (DoubleEnded)

Wanneer u op enter drukt, wordt de deque teruggezet van de linkerkant naar de rechterkant.

Conclusie

In deze tutorial hebben we het concept van de deque besproken. We hebben alle mogelijke bewerkingen gedeeld die kunnen worden uitgevoerd met behulp van deque, namelijk het importeren van verzamelingen, waarden toevoegen aan de rechterkant van de deque, waarden toevoegen aan de linkerkant en waarde verwijderen aan de linkerkant, waarde verwijderen aan de rechterkant. Ten slotte bespraken we de methode om de hele deque terug te draaien.

De mogelijkheden die in de tutorial worden besproken, kunnen indien nodig worden gebruikt. Gebruikers kunnen kiezen voor een lijst of deque op basis van hun vereisten. Beide hebben verschillende voordelen die zijn gebaseerd op een situatie, waarbij de ene boven de andere moet worden gebruikt. Geheugentoewijzing, efficiëntie en basisfunctionaliteiten van dubbele lijsten zijn de enige verschillen. Deze tutorial moet nuttig zijn voor degenen die meer willen weten over de generieke bewerkingen van de deque.

Strijd om Wesnoth Zelfstudie
The Battle for Wesnoth is een van de meest populaire open source strategiespellen die je op dit moment kunt spelen. Dit spel is niet alleen al heel la...
0 A.D. zelfstudie
Van de vele strategiespellen die er zijn, 0 A.D. slaagt erin om op te vallen als een uitgebreide titel en een zeer diep, tactisch spel ondanks dat het...
Unity3D-zelfstudie
Inleiding tot Unity 3D Unity 3D is een krachtige game-ontwikkelingsengine. Het is platformoverschrijdend, zodat je games voor mobiel, internet, deskto...