In C++, Stacks are a type of container adaptor with LIFO(Last In First Out) type of working, where a new element is added at one end (top) and an element is removed from that end only. In this article, we will learn how to declare a stack in C++.
Declaring a Stack in C++ STL
The C++ STL provides a container std::stack that implements stack data structure. To declare a stack, we can use the following syntax
Syntax to Declare a Stack
stack<dataType> stackName;
Here,
- dataType: It is the type of data that a stack will be storing.
C++ Program to Declare A Stack
C++
// C++ Program to illustrate how to declare a stack #include <iostream> #include <stack> using namespace std;
// Driver Code int main()
{ // Declaring a stack of integers
stack< int > stackData;
// Pushing elements in the stack
stackData.push(10);
stackData.push(20);
stackData.push(30);
// Printing the top element
cout << "Top element of the stack is: "
<< stackData.top() << endl;
// Removing elements from the stack
stackData.pop();
// Check if the stack is empty
if (stackData.empty()) {
cout << "The stack is empty." << endl;
}
else {
cout << "The stack is not empty." << endl;
}
// Printing Size of the stack
cout << "Size of the stack: " << stackData.size()
<< endl;
return 0;
} |
Output
Top element of the stack is: 30 The stack is not empty. Size of the stack: 2
Time Complexity: O(N)
Auxiliary Space: O(N), where N is the number of stack elements.