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)

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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;
}

chevron_right


Output:

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:

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above



My Personal Notes arrow_drop_up