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.
La función push_back() se usa para insertar elementos en una cola desde atrás. El nuevo valor se inserta en el deque al final, antes del último elemento actual y el tamaño del contenedor aumenta en 1.
Sintaxis:
dequename.push_back(value) Parameters : The value to be added in the back is passed as the parameter Result : Adds the value mentioned as the parameter to the back of the deque named as dequename
Ejemplos:
Input : deque{1, 2, 3, 4, 5}; deque.push_back(6); Output : 1, 2, 3, 4, 5, 6 Input : deque{5, 4, 3, 2, 1}; deque.push_back(6); Output : 5, 4, 3, 2, 1, 6
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
// CPP program to illustrate // push_back() function #include <iostream> #include <deque> using namespace std; int main() { deque<int> mydeque{ 1, 2, 3, 4, 5 }; mydeque.push_back(6); // deque becomes 1, 2, 3, 4, 5, 6 for (auto it = mydeque.begin(); it != mydeque.end(); ++it) cout << ' ' << *it; }
Producción:
1 2 3 4 5 6
Complejidad de tiempo:
Aplicación O(1)
Dado un deque vacío, agregue números enteros usando la función push_back() y luego calcule la suma de todos sus elementos.
Input : 11, 2, 5, 3, 7, 1 Output : 29
Algoritmo
1. Agregue elementos a la deque usando la función push_back().
2. Verifique si el tamaño de la deque es 0, si no, agregue el elemento frontal a la variable de suma 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
// CPP program to illustrate // Application of push_back() function #include <iostream> #include <deque> using namespace std; int main() { int sum = 0; deque<int> mydeque; mydeque.push_back(11); mydeque.push_back(2); mydeque.push_back(5); mydeque.push_back(3); mydeque.push_back(7); mydeque.push_back(1); while (!mydeque.empty()) { sum = sum + mydeque.front(); mydeque.pop_front(); } cout << sum; return 0; }
Producción:
29
Publicación traducida automáticamente
Artículo escrito por AyushSaxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA