Stack in C++ STL
Stacks are a type of container adaptors with LIFO(Last In First Out) type of working, where a new element is added at one end and (top) an element is removed from that end only.
The functions associated with stack are:
empty() – Returns whether the stack is empty – Time Complexity : O(1)
size() – Returns the size of the stack – Time Complexity : O(1)
top() – Returns a reference to the top most element of the stack – Time Complexity : O(1)
push(g) – Adds the element ‘g’ at the top of the stack – Time Complexity : O(1)
pop() – Deletes the top most element of the stack – Time Complexity : O(1)
// CPP program to demonstrate working of STL stack #include <iostream> #include <stack> using namespace std; void showstack(stack < int > s) { while (!s.empty()) { cout << '\t' << s.top(); s.pop(); } cout << '\n' ; } int main () { stack < int > s; s.push(10); s.push(30); s.push(20); s.push(5); s.push(1); cout << "The stack is : " ; showstack(s); cout << "\ns.size() : " << s.size(); cout << "\ns.top() : " << s.top(); cout << "\ns.pop() : " ; s.pop(); showstack(s); return 0; } |
The stack is : 1 5 20 30 10 s.size() : 5 s.top() : 1 s.pop() : 5 20 30 10
List of functions of Stack:
- stack::top() in C++ STL
- stack::empty() and stack::size() in C++ STL
- stack::push() and stack::pop() in C++ STL
- stack::swap() in C++ STL
- stack::emplace() in C++ STL
- Recent Articles on C++ Stack
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above
Recommended Posts:
- Sort a stack using a temporary stack
- stack empty() and stack size() in C++ STL
- stack top() in C++ STL
- stack emplace() in C++ STL
- Stack Unwinding in C++
- stack swap() in C++ STL
- stack push() and pop() in C++ STL
- Sort a stack using recursion
- Delete middle element of a stack
- Sudo Placement[1.3] | Stack Design
- Check if the elements of stack are pairwise sorted
- Level order traversal in spiral form | Using one stack and one queue
- Design a stack that supports getMin() in O(1) time and O(1) extra space
- Design and Implement Special Stack Data Structure | Added Space Optimized Version
- Heap overflow and Stack overflow