Mètode de la classe cua per a revessar-la

Implementeu un nou mètode de la classe Queue que revessi els seus propis
elements. És a dir, el que estava al principi ara apareixerà al final,
el que era el segon des del principi ara apareixerà com a segon des del
final, i així successivament.

D’entre els fitxers que s’adjunten en aquest exercici, trobareu
queue.old.hpp, a on hi ha una implementació de la classe genèrica Queue.
En primer lloc, haureu de fer:

    cp queue.old.hpp queue.hpp

A continuació, haureu de buscar dins queue.hpp la part:

    // Pre: Sigui [e1,e2...,en] el contingut inicial de la cua des del principi fins al final
    // Post: El contingut final de la cua és [en,...,e2,e1], és a dir, la cua ha estat revessada.
    // Descomenteu les següents dues linies i implementeu la funció:
    // void reverse() {
    // }

Haureu de descomentar les dues línies que s’indiquen i implementar
aquest mètode. No toqueu la resta de la implementació de la classe,
excepte si, per algun motiu, considereu que necessiteu afegir algun
mètode auxiliar a la part privada.

Preferiblement, haurieu d’aconseguir implementar reverse a base
d’intercanviar els punters de l’objecte. De fet, una implementació a
base d’usar push i pop us permetrà passar els jocs de proves públics (i
així obtenir una part de la nota), però no els privats.

D’entre els fitxers que s’adjunten a l’exercici també hi ha program.cpp
(programa principal) i Makefile per a compilar. Per a pujar la vostra
solució, heu de crear el fitxer solution.tar així:

    tar cf solution.tar queue.hpp

Entrada

La entrada del programa és una seqüència d’instruccions del següent
tipus que s’aniran aplicant sobre una cua que se suposa inicialment
buida:

    push x (x és un string)
    pop
    front
    size
    reverse

Se suposa que la seqüència d’entrada serà correcta (sense pop ni front
sobre cua buida).

El programa principal que us oferim ja s’encarrega de llegir aquestes
entrades i fer les crides als corresponents mètodes de la classe cua.
Només cal que implementeu el mètode abans esmentat.

Sortida

Per a cada instrucció front, s’escriurà el front actual de la cua. Per a
cada instrucció size, s’escriurà la mida de la cua. El programa que us
oferim ja fa això. Només cal que implementeu el mètode abans esmentat.

Informació del problema

Autoria: PRO1

Generació: 2026-01-25T21:16:00.285Z

© Jutge.org, 2006–2026.
https://jutge.org
