Stack (informatica)
De stapel is een van de belangrijkste gegevensstructuren in de informatica. Om te begrijpen hoe een stapel werkt, denk aan een spel speelkaarten met de beeldzijde naar beneden. We kunnen alleen gemakkelijk bij de kaart komen die bovenaan ligt. Als we naar de bovenste kaart willen kijken, kunnen we twee dingen doen: we kunnen er naar gluren, maar hem op de stapel laten liggen, of we kunnen hem eraf halen. Als we het bovenste voorwerp eraf halen, halen we het van de stapel. Als we nog een kaart aan de bovenkant van de stapel willen toevoegen, dan duwen we.
Een stapel wordt een last-in-first-out (LIFO) verzameling genoemd. Dit betekent dat het laatste dat we hebben toegevoegd (geduwd), het eerste is dat er wordt afgetrokken (gepopt). Als de laatste kaart die we op onze stapel kaarten hebben gelegd een aas was, dan is de eerste kaart die we van de top trekken diezelfde aas.
Twee acties op een stapel: push en pop.
Geschiedenis
De schoorsteen werd voor het eerst voorgesteld in 1955, en vervolgens gepatenteerd in 1957, door de Duitser Friedrich L. Bauer. Hetzelfde concept werd onafhankelijk ontwikkeld, rond dezelfde tijd, door de Australiër Charles Leonard Hamblin.
Andere bewerkingen
In moderne computertalen wordt de stack meestal geïmplementeerd met meer operaties dan alleen "push" en "pop". Sommige implementaties hebben een functie die de huidige lengte van de stack teruggeeft. Een andere typische helperoperatie is "top" (ook bekend als "peek"), die het huidige bovenste element van de stack kan teruggeven zonder het te verwijderen. Een andere veel voorkomende bewerking is "dup", die een kopie maakt van het element bovenaan de stack.
Verwante pagina's
- Stapelmachine