Стекът е линейна структура от данни в информатиката, в която обработката на информация
става само от едната страна наречена връх. Дъното не е и не трябва да е
достъпно. Стековете са базирани на принципа LIFO – (Last In First Out = Последен влязъл пръв
излязъл).
Стекът теоретично може да събере безкраен брой обекти, но на практика
само краен брой, ограничен от количеството памет. Обектите могат да се
поставят и да се четат (вадят) единствено от горната страна на стека.
Стекът има три операции:
Stack са данни от тип LIFO (Last In, First Out). Един stack може да има всякакви типове данни (stack от int, от float, от char и тн.). Stack-ът се обработва с две операции, наречени push и pop (понякога се нарича pull)
Операцията push добавя нов елемент най-отгоре в stack-а и го инициализира, ако досега не е имало елементи. Push може да препълни stack-а, което е известно като Stack Overflow (много позната грешка за хората, занимавали се с рекурсия на Pascal миналата година :D ).
Операцията pop изтрива най-горния (последно добавения) елемент от stack-а. Pop може да изпразни stack-a, което е известно като Stack Underflow.
Stack може да се използва за много неща, например превръщане на десетично число в двоично, решаване на задачата за Ханойските кули (правена миналата година на Pascal), сортиране и други.