Stack (datastruktur)
Den här artikeln behöver källhänvisningar för att kunna verifieras. (2017-08) Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan. |
Stack är en linjär ordnad följd av element, som följer "sist in, först ut"-principen. Precis som en papperstrave finns det två operationer man kan utföra: lyfta av (en: pop) och lägga på (en: push).[1]
Stacken är en mycket vanlig datastruktur och används implicit i i stort sett i alla datorprogram. Vid funktionsanrop i imperativa programspråk lagras anropsparametrarna och lokala variabler i en stack-struktur, så att de sedan kan hämtas tillbaka i rätt ordning när funktionen återvänder. Många processorer har en inbyggd stack för att hantera funktionsanrop och returadresser.
För att hålla reda på var i minnet det översta elementet i stacken finns används en stackpekare.
Se även
- Kö
- Omvänd polsk notation (RPN)
- Stackmaskin
Referenser
- ^ Janlert, Lars-Erik. (3 januari 2002). ”Datatyper och algoritmer”. TPB. http://worldcat.org/oclc/939574148. Läst 6 juni 2019.
Media som används på denna webbplats
Författare/Upphovsman: Tkgd2007, Licens: CC BY-SA 3.0
A new incarnation of Image:Question_book-3.svg, which was uploaded by user AzaToth. This file is available on the English version of Wikipedia under the filename en:Image:Question book-new.svg
Författare/Upphovsman: Vektorisering: Alhadis, Licens: CC0
A LIFO (Last In First Out) stack, abstract data type, in a simple representation of a stack runtime with push and pop operations.