deque::push_front() en C++ STL

Las colas Deque o de doble extremo son contenedores de secuencia con la función de expansión y contracción en ambos extremos. Son similares a los vectores, pero son más eficientes en caso de inserción y eliminación de elementos al final, y también al principio. A diferencia de los vectores, es posible que no se garantice la asignación de almacenamiento contiguo.

deque::push_front()

La función push_front() se usa para insertar elementos en un deque desde el frente. El nuevo valor se inserta en el deque al principio, antes del primer elemento actual y el tamaño del contenedor aumenta en 1.

Sintaxis:

dequename.push_front(value)
Parameters :
The value to be added in the front is 
passed as the parameter
Result :
Adds the value mentioned as the parameter 
to the front of the deque named as dequename

Ejemplos:

Input : deque{1, 2, 3, 4, 5};
        deque.push_front(6);
Output : 6, 1, 2, 3, 4, 5

Input : deque{5, 4, 3, 2, 1};
        deque.push_front(6);
Output :6, 5, 4, 3, 2, 1

Errores y excepciones

1. Fuerte garantía de excepción: si se lanza una excepción, no hay cambios en el contenedor.
2. Si el valor pasado como argumento no es compatible con el deque, muestra un comportamiento indefinido.

// CPP program to illustrate
// push_front() function
#include <deque>
#include <iostream>
using namespace std;
  
int main()
{
    deque<int> mydeque{ 1, 2, 3, 4, 5 };
    mydeque.push_front(6);
  
    // deque becomes 6, 1, 2, 3, 4, 5
  
    for (auto it = mydeque.begin();
         it != mydeque.end(); ++it)
        cout << ' ' << *it;
}

Producción:

6 1 2 3 4 5

Complejidad de tiempo : O(1)

Aplicación
Dado un deque vacío, agréguele números enteros usando la función push_front() y luego calcule su tamaño.

Input  : 1, 2, 3, 4, 5, 6
Output : 6

Algoritmo
1. Agregue elementos a la deque usando la función push_front()
2. Verifique si el tamaño de la deque es 0, si no, incremente la variable de contador inicializada como 0, y extraiga el elemento frontal.
3. Repita este paso hasta que el tamaño del deque sea 0.
4. Imprima el valor final de la variable.

// CPP program to illustrate
// Application of push_front() function
#include <deque>
#include <iostream>
using namespace std;
  
int main()
{
    int count = 0;
    deque<int> mydeque;
    mydeque.push_front(1);
    mydeque.push_front(2);
    mydeque.push_front(3);
    mydeque.push_front(4);
    mydeque.push_front(5);
    mydeque.push_front(6);
    while (!mydeque.empty()) {
        count++;
        mydeque.pop_front();
    }
    cout << count;
    return 0;
}

Producción:

6

Publicación traducida automáticamente

Artículo escrito por AyushSaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *