Dizionari
Esercizio 1
Estendere la classe hash_table aggiungendo i seguenti metodi
- containsValue(const E& e): restustuisce true se una o pių chiavi sono mappate al
valore e nel dizionario
- values(): restituisce la lista dei valori memorizzati nel dizionario
- keys(): restituisce la lista delle chiavi memorizzate nel dizionario
- resize(): raddoppia la dimensione interna della tabella. Esistono due strategie:
- creare la nuova tabella; iterare su tutti gli elementi nella vecchia tabella e reinserirli
nella nuova
- incremental resizing: creare la nuova tabella e conservarsi la vecchia intatta;
effettuare ogni operazione di ricerca o eliminazione su entrambe le tabelle; effettuare i
nuovi inserimenti solo nella nuova tabella; al verificarsi di un nuovo inserimento spostare
anche k elemeti dalla vecchia tabella alla nuova; deallocare la vecchia tabella quando
diventa vuota.
Esercizio 2
Dati due insiemi di interi S1 e S2, facendo uso di un dizionario, stabilire se S1 č un sottoinsieme di S2 o se sono esattamente uguali.