C++ <stack> - swap() Function
The C++ stack::swap function is used to exchange all elements of one stack with all elements of another stack. To apply this function, the data-type of both stacks must be same, although the size may differ.
Syntax
void swap (stack& other) noexcept(/* see below */);
Exchanges the content of the container adaptor(*this) with those of others.
Parameters
other |
Specify stack, whose elements need to be exchanged with another stack. |
Return Value
None.
Time Complexity
Constant i.e, Θ(1).
Example:
In the example below, the stack::swap function is used to exchange all elements of stack stk1 with all elements of stack stk2.
#include <iostream> #include <stack> using namespace std; int main (){ stack<int> stk1, stk2; //add new elements in the stk1 stk1.push(10); stk1.push(20); stk1.push(30); stk1.push(40); stk1.push(50); //add new elements in the stk2 stk2.push(5); stk2.push(55); stk2.push(555); stk1.swap(stk2); cout<<"After Swapping, The stk1 contains:"; while (!stk1.empty()) { cout<<" "<<stk1.top(); stk1.pop(); } cout<<"\nAfter Swapping, The stk2 contains:"; while (!stk2.empty()) { cout<<" "<<stk2.top(); stk2.pop(); } return 0; }
The output of the above code will be:
After Swapping, The stk1 contains: 555 55 5 After Swapping, The stk2 contains: 50 40 30 20 10
❮ C++ <stack> Library