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]

En schematisk bild som visar först flera omgångar av påläggning, sedan dito för avlyftning.
En schematisk bild som visar först flera omgångar av påläggning, sedan dito för avlyftning.

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 redigera

Referenser redigera

  1. ^ Janlert, Lars-Erik. (3 maj 2002). ”Datatyper och algoritmer”. TPB. http://worldcat.org/oclc/939574148. Läst 6 juni 2019.