Stack i Python - Implementering av Satck med hjälp av två olika metoder

Innehållsförteckning:

Anonim

Introduktion till Stack in Python

Python Stack är i allmänhet en datastruktur som fungerar enligt sist och in ut-principen. det är en abstrakt datatyp. Några vanliga exempel på stackstruktur är ett kortlek. precis som dess exempel, till och med i programvaruarenan, tillämpar Python Stack samma uppsättning protokoll. vilket innebär att all dataoperation endast kan utföras till sist i första ut-principen. vid ett specifikt exempel, är det bara Pinna-elementet i Python Stack som kan nås.

Viktiga egenskaper för stacken i Python

  • Den viktigaste ideologin med stacken är att den fungerar på sist i första ut-principen.
  • Push- och pop-operationerna används för att infoga och radera ett element från en bunt.
  • Några viktiga exempel på stacken är textparning och konvertering av uttryck.

Två sätt Stack kan implementeras

De tre huvudsakliga sätten på vilka en stack kan implementeras är som nedan,

  • Implementera en bunt med hjälp av en samling
  • implementera en stack med hjälp av en lista

1. Implementera stack med hjälp av samling

Samlingar är datatyper som används för att lagra datainsamlingar. Stapeldatastrukturen kan tillämpas för att öva i python-programmering i en samling med hjälp av klisterklassen. deque-klassen fungerar i princip i LIFO-ordningen. nedanstående exempel visar stapeloperationerna med samlingar.

Koda:

from country_list import countries_for_language
from collections import deque
# extract all the values of the countries
countries_dict = dict(countries_for_language('en'))
country_values = countries_dict.values()
#Add all the country names to a stack
Country_stack_variable = deque()
for i in country_values:
Country_stack_variable.append(i)
print('Stack variable type :', type(Country_stack_variable), '\n')
print('Stack variable values :', Country_stack_variable, '\n')
while Country_stack_variable:
country_temp = Country_stack_variable.pop()
if country_temp(0) == 'A':
print(country_temp)
if country_temp(0) == 'Z':
print(country_temp)
print('\n Stack variable values after Pop :', Country_stack_variable, '\n')

Utgång:

Förklaring:

  • Programmet ovan använder en insamling av datatyp för att förbereda stacken. den här processen innebär att importera täckklassen i samlingsbiblioteket. Här används importen av 'country_list' för att dra ut katalogen över alla länder. Alla landsvärden extraheras i en ordboksvariabel eftersom landbibliotekets extrakt är av ett dikterat format där nyckeln är en notation av alfabetet under vilket landet faller och värdet är det faktiska landets namn.
  • För att uppnå staplingsfunktionen skapas ett teckenobjekt. det här är av typen täck. varje element i landsklassen fylls i detta objekt med en för en slinga. detta för slinga konstruerar stackfunktionaliteten med alla ingångar staplade i stigande ordning. För att klargöra att detta dataelement fungerar exakt som en stack.
  • Pop-operationen tillämpas. här poppar och skrivs varje element i bunten ut med funktionen pop (). vi kunde märka att varje pop () skriver ut det nyaste landnamnet i konsolen som i detta fall börjar med den alfabetiska notationen 'z' och skriver ut den alfabetiska notationen 'a' som den sista uppsättningen av element.

2. Implementera stacken med Lista

Som en samling kan pytonstacken också implementeras med hjälp av en enkel pytonlista. exakt att säga vilken lista som deklarerats i python tenderar att fungera som en stack av naturen. så att poppa ett värde på en lista returnerar alltid det sista värdet i den. Följande kodprov förklarar implementeringen av en stack med hjälp av en lista,

Koda:

from country_list import countries_for_language
# extract all the values of the countries
countries_dict = dict(countries_for_language('en'))
country_values = countries_dict.values()
#Add all the country names to a stack
Country_stack_variable = () for i in country_values:
Country_stack_variable.append(i)
print('Stack variable type :', type(Country_stack_variable), '\n')
print('Stack variable values :', Country_stack_variable, '\n')
while Country_stack_variable:
country_temp = Country_stack_variable.pop()
if country_temp(0) == 'A':
print(country_temp)
if country_temp(0) == 'Z':
print(country_temp)
print('\n Stack variable values after Pop :', Country_stack_variable, '\n')

Utgång:

Förklaring :

  • Programmet ovan använder en lista med datatyper för att förbereda stacken. Här används en standardlista i pythondatastrukturen för att uppnå denna funktionalitet.
  • Liksom ovanstående program används även importen av 'country_list' för att dra ut katalogen över alla länder. Alla landsvärden extraheras i en ordboksvariabel eftersom landbibliotekets extrakt är av ett dikterat format där nyckeln är en notation av alfabetet under vilket landet faller och värdet är det faktiska landets namn.
  • Varje element i landsklassen fylls i detta objekt med en slinga. detta för loop konstruerar den staplade listan med alla ingångar staplade i stigande ordning. För att klargöra att detta dataelement fungerar exakt som en stack. Popoperationen tillämpas också här, men till skillnad från på ett täckningsobjekt här, används operationen på en pythonlista.
  • Här poppas och skrivs ut alla element i den staplade listan med funktionen pop (). Vi kunde märka att varje pop () skriver ut det nyaste landnamnet i konsolen som i detta fall börjar med den alfabetiska notationen 'z' och skriver ut den alfabetiska notationen 'a' som den sista uppsättningen av element.

Stack-operationer utförda i Python

Några av dem anges nedan:

1. Pseudokod för PUSH-drift

  • Utvärdera volymen på stacken
  • När överflödet nås, meddela status- och utgångsprogrammet.
  • när en bunt inte flyter över kan volymen ökas och elementet kan läggas till toppen av bunten.

2. Pseudokod för POP-drift

  • Utvärdera volymen på stacken
  • När överflödet nås, meddela status- och utgångsprogrammet.
  • när en bunt inte är under flöde kan volymen ökas och elementet kan läggas till toppen av bunten.

Slutsats

Pythons förmåga att uttrycka stackfunktionaliteten på flera tillvägagångssätt visar flexibiliteten i detta supereffektiva programmeringsspråk. python uttrycker sin klassificerade förmåga med sin smidighet att passa upp nästan varje datastruktur behöver. detta gör detta språk till det mest föredragna inom programvaruutvecklingsarenan.

Rekommenderade artiklar

Detta är en guide till en stack i Python. Här diskuterar vi introduktionen, tre sätt Stack kan implementeras, stackens viktiga egenskaper. Du kan också gå igenom våra andra artiklar som föreslås för att lära dig mer–

  1. Matplotlib I Python
  2. Omvänd nummer i Python
  3. Python Compilers
  4. Rekursiv funktion i Python