Стекът е линейна структура от данни. Работи на принципа LIFO (Last-In First-Out), тоест последен влязъл – първи излязъл. Можем да добавяме и изваждаме елементи само от едната страна.
Уроци по програмиране
За работа със стекове е необходимо да добавите библиотеката stack:
- #include <stack>
Декларирането на стек става по следния начин:
- //stack<тип_данни> име_на_стека;
- stack<int> s;
Стекът поддържа следните функции:
-
- empty() – връща TRUE ако стека няма елементи
- pop() – премахва най-горния елемент на стека
- push() – добавя елемент отгоре на стека
- size() – връща броя елементи в стека
- top() – връща стойността на най-горния елемент на стека
Задача: Разгледайте и тествайте следната програма, която показва всички функции в действие:
- #include <iostream>
- #include <stack>
- using namespace std;
- int main()
- {
- stack<int> s;
- cout<<„Broi elementi:“<<s.size()<<endl;
- s.push(1);
- s.push(2);
- s.push(3);
- cout<<„Broi elementi:“<<s.size()<<endl;
- cout<<„Gorniq element:“<<s.top()<<endl;
- s.pop();
- cout<<„Broi elementi:“<<s.size()<<endl;
Loading …
Автор: Мартин Михайлов