Insertar una altra llista al final

Afegeix un mètode públic a la classe List<T> que, donada una altra
llista other, transfereixi tots els valors de other al final de la
llista implícita, deixant buida la llista other.

La capçalera és la següent:

    /**
     * @brief Transfereix tots els elements de `other` al final de la 
     *        llista, en el mateix ordre en què estan.
     *
     * @pre   `other` es una altra llista, possiblement buida.
     * @post  `other` queda buida i la llista implícita té tots els 
     *         elements de `other` al final, en el mateix ordre.
     **/
    void push_back_all(List& other);

Observació

Per poder avaluar l’ús de punters, no feu servir altres mètodes, ni
públics ni privats, de la classe per resoldre el problema.

Els fitxers públics (icona del gatet) contenen:

  ---------- ------------------------------------------------------
  list.hh    la classe List<T>
  main.cc    el programa principal (gestiona l’entrada i sortida)
  Makefile   per compilar amb make al terminal
  .vscode    per compilar i debuggar amb F5
  ---------- ------------------------------------------------------

Per entregar només cal enviar el fitxer list.hh modificat.

Entrada

De l’entrada se n’encarrega ja el programa principal. L’entrada està
formada per diferents cassos seguits. Cada cas té dues línies, a on la
primera conté una llista L en el format {e1, e2, ..., eN} (a on
l’element de més a l’esquerra és el front i el de més a la dreta el
back), i la segona línia té la llista other que cal transferir al final
de L. Els cassos se separen per una línia buida.

Sortida

De la sortida també se n’encarrega el programa principal. La sortida
mostra les dues llistes L i other, cada una en una línia, un cop cridat
el mètode push_back_all. També se separen els resultats dels diferents
cassos amb una línia buida.

Informació del problema

Autoria: Pau Fernández

Generació: 2026-01-27T18:50:21.653Z

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