Menu
Coddy logo textTech

Coda a doppia estremità

Lezione 6 di 23 del corso C++ - Libreria standard dei template di Coddy.

Deque è un contenitore sequenziale in C++ chiamato anche coda a doppia estremità. Più avanti, nel corso, nel capitolo sugli Adattatori di contenitori, imparerai a conoscere una coda normale. Per ora, però, devi sapere che in una coda normale gli elementi vengono inseriti dalla fine e rimossi dall'inizio. In una deque, invece, possiamo inserire e rimuovere elementi sia dall'inizio che dalla fine.


In una deque, possiamo inserire e rimuovere elementi sia dall'inizio che dalla fine.

Implementiamo la struttura dati deque includendo la libreria all'inizio del nostro file .cpp con #import <deque> (possiamo anche accedere alla deque includendo il file header bits/stdc++.h)

Successivamente, creiamo una deque con la seguente sintassi:

deque<data_type> deque_name;

Per prima cosa, usiamo la parola chiave deque. Poi inseriamo il tipo di variabile che vogliamo memorizzare nella deque e, infine, specifichiamo il nome della variabile deque.

deque<int> numbers;

Possiamo anche inizializzare una deque mentre la dichiariamo, usando la stessa sintassi che abbiamo usato per la struttura dati vector:

deque<int> numbers = {1, 2, 3, 4, 5};

cout << numbers[0];
Output:
1

Quindi, inseriamo un elemento alla fine della deque usando il metodo push_back() e lo inseriamo all'inizio con il metodo push_front().

deque<int> numbers = {2, 3};

numbers.push_front(1);
numbers.push_back(4);

for(int i = 0; i < numbers.size(); i++)
	cout << numbers[i] << " ";
Output:
1 2 3 4

Metodi della deque

MetodoFunzionalità
push_back()Inserisce un nuovo elemento alla fine
push_front()Inserisce un nuovo elemento all'inizio
pop_back()Rimuove l'elemento dalla fine
pop_front()Rimuove l'elemento dall'inizio
size()Restituisce il numero di elementi
empty()Restituisce se la deque è vuota
clear()Rimuove tutti gli elementi della deque
challenge icon

Sfida

Facile

L'utente inserirà numeri positivi finché non inserirà -1. Itera inserendo ogni numero in un deque: il primo all'inizio, il secondo alla fine, il terzo all'inizio e così via... Dopodiché, usando un ciclo, itera attraverso il deque e visualizza ogni elemento con uno spazio tra gli elementi.

 

Input
5
10
15
20
25
30
-1
Output
25 15 5 10 20 30

Provalo tu

#include <deque>
#include <iostream>

using namespace std;

int main()
{
    // Enter your code here

    return 0;
}

Tutte le lezioni di C++ - Libreria standard dei template

Esercitati da solo: Compilatore C++ online