Cognome___________________ Nome ____________________ Matricola____________________
Questo compito è stato discusso e definito collegialmente dalla commissione di esame di Fondamenti di Informatica.
Esame di Fondamenti di Informatica (V.O.) e II (N.O.) (prova pratica di programmazione n.1)
24-giugno-2003
Testo dell’esercizio
La classe SempliceLinkedList implementa una lista con rappresentazione collegata, utilizzando la classe Node vista a lezione. La classe SempliceLinkedList ha il seguente scheletro.
public class SempliceLinkedList { /* variabili di istanza */
private Node head;
private int count;
/* costruttore: crea una lista vuota */
public SempliceLinkedList (){...}
/* aggiunge un elemento in testa alla lista */
public void addToHead(Object data){...}
/* restituisce una desrizione della lista */
public String toString(){...}
/* modifica la lista corrente (oggetto ricevente), concatenando ad essa la lista lis
(la lista lis va attaccata alla coda della lista corrente) */
public void concatena (SempliceLinkedList lis){...}
}
La classe Node è già implementata e presente sul dischetto.
La classe SempliceLinkedList è presente sul dischetto, ma non è stato implementato il metodo concatena.
Svolgere i seguenti punti:
1. Completare la classe SempliceLinkedList, scrivendo il codice del metodo concatena.
2. Definire una semplice classe di test TestSempliceLinkedList che contiene il solo metodo
main. Tale metodo svolge nell’ordine le seguenti azioni: (a) crea due liste lis1 e lis2 di tipo SempliceLinkedList; (b) fa inserire all’utente un numero a sua scelta di stringhe in lis1 e lis2;
(c) visualizza all’utente le liste lis1, lis2, e la concatenazione di lis2 a lis1 (cioè lis1 è l’oggetto ricevente della concatenazione).
Note importanti:
• Sul dischetto che ti è stato dato trovi la classe Node e la classe ReadStream già compilate (viene anche fornito il file Node.java).
• Sul dischetto trovi poi il file SempliceLinkedList.java da completare.
• Salva le classi che devi definire o completare sul dischetto.
• Scrivi Cognome, Nome e Matricola sia su questo foglio sia in un commento in testa alle classi che devi definire.
• Il dischetto va riconsegnato ben incartato in questo foglio