Open In App

queue push() and pop() in C++ STL

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

The queue is a type of container that operates in a First In First Out (FIFO) type of arrangement. Elements are inserted at the back(end) and are deleted from the front of the queue. For this purpose, the member functions queue::push() and queue::pop() are used respectively.

In this article, we will discuss these queue::pop() and queue()::push() functions.

queue::push() in C++

The push() function of the queue container is used to insert an element at the back of the queue. This is an inbuilt function from C++ Standard Template Library(STL). This function belongs to the <queue> header file. The element is added to the queue container and the size of the queue is increased by 1.

Syntax

queue_name.push(value)

Parameters

  • The value of the element to be inserted is passed as the parameter.

Result

  • Adds an element of value same as that of the parameter passed at the back of the queue.

Examples

Input :  myqueue
         myqueue.push(6);
Output : 6

Input :  myqueue
         myqueue.push(0);
         myqueue.push(1);
Output : 0, 1

Errors and Exceptions

  1. Shows an error if the value passed doesn’t match the queue type.
  2. Shows no exception throw guarantee if the parameter doesn’t throw any exception.

Example of queue::push()

CPP




// CPP program to illustrate
// Application of push() and pop() function
 
#include <iostream>
#include <queue>
using namespace std;
 
int main()
{
    // Empty Queue
    int c = 0;
 
    queue<int> myqueue;
    myqueue.push(5);
    myqueue.push(13);
    myqueue.push(0);
    myqueue.push(9);
    myqueue.push(4);
    // queue becomes 5, 13, 0, 9, 4
 
    // Counting number of elements in queue
    while (!myqueue.empty()) {
        myqueue.pop();
        c++;
    }
    cout << c;
}


Output

 0 1 2

Time Complexity: O(1) (Queue pop() operation take constant time complexity.)

Note: Here, output is printed on the basis of FIFO property.

queue::pop() in C++

The pop() function of the queue container is used to remove an element from the front of the queue(the oldest element in the queue). This is an inbuilt function from C++ Standard Template Library(STL). This function belongs to the <queue> header file. The element is removed from the queue container and the size of the queue is decreased by 1.

Syntax

queue_name.pop()

Parameters

  • No parameters are passed

Result

  • Removes the oldest element in the queue or basically the front element.

Examples:

Input    :  myqueue = 1, 2, 3
                myqueue.pop();
Output : 2, 3

Input    :  myqueue = 3, 2, 1
                myqueue.pop();
Output : 2, 1

Errors and Exceptions

  1. Shows an error if a parameter is passed.
  2. Shows no exception throw guarantee if the parameter doesn’t throw any exception.

Example of queue::pop()

CPP





Output

 2

Time Complexity: O(1) (Queue pop() operation take constant time complexity.)

Note: Here, output is printed on the basis of FIFO property.

Application of push() and pop() in C++

Given a number of integers, add them to the queue and find the size of the queue without using the size function. 

Input : 5, 13, 0, 9, 4
Output: 5

Algorithm

  1. Push the given elements to the queue container one by one. 
  2. Keep popping the elements of the queue until the queue becomes empty, and increment the counter variable. 
  3. Print the counter variable.

Example

CPP




// CPP program to illustrate
// Application of push() and pop() function
 
#include <iostream>
#include <queue>
using namespace std;
 
int main()
{
    // Empty Queue
    int c = 0;
 
    queue<int> myqueue;
    myqueue.push(5);
    myqueue.push(13);
    myqueue.push(0);
    myqueue.push(9);
    myqueue.push(4);
    // queue becomes 5, 13, 0, 9, 4
 
    // Counting number of elements in queue
    while (!myqueue.empty()) {
        myqueue.pop();
        c++;
    }
    cout << c;
}


Output

5

Time complexity: O(n) // n is the size of the queue.

Auxiliary Space: O(1)

Difference between queue push() and queue pop() in C++

The following table list the differences between queue::push() and queue::pop():

 S. No.

queue push() 

queue pop()

1.

It is used to insert a new element at the end of the queue. It is used to remove the next element in the queue

2.

Its syntax is -:
push (value_type&& val);
Its syntax is -:
pop();

3.

It takes one parameter that is the value to be inserted. It does not take any parameters.

4.

Its return type is void. Its return type is void.

5.

It is present in the <queue> header file. It is present in the <queue> header file.

 



Last Updated : 02 Nov, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads