This shows you the differences between two versions of the page.
sd-ca:2017:laboratoare:lab-05 [2017/12/12 14:34] teodora.serbanescu created |
sd-ca:2017:laboratoare:lab-05 [2018/02/19 15:30] (current) cosmin_ioan.petrisor [Exerciţii] |
||
---|---|---|---|
Line 260: | Line 260: | ||
===== Exerciţii ===== | ===== Exerciţii ===== | ||
+ | <hidden> | ||
1) [**6p**] Implementaţi structura de date dicţionar, plecând de la [[sd-ca:laboratoare:lab-05#schelet_hashtable|antetul]] definit anterior. | 1) [**6p**] Implementaţi structura de date dicţionar, plecând de la [[sd-ca:laboratoare:lab-05#schelet_hashtable|antetul]] definit anterior. | ||
* [**1p**] constructor şi destructor | * [**1p**] constructor şi destructor | ||
Line 270: | Line 271: | ||
* caută definiţia unui cuvânt dat | * caută definiţia unui cuvânt dat | ||
* afişează mesaj de eroare //cuvânt inexistent// în cazul în care un cuvânt nu se găseşte în dicţionar | * afişează mesaj de eroare //cuvânt inexistent// în cazul în care un cuvânt nu se găseşte în dicţionar | ||
- | |||
- | |||
**Exemplu** | **Exemplu** | ||
Line 292: | Line 291: | ||
3) [**2p**] **Bonus:** Implementați și testați redimensionarea unui hashtable: funcția **resize** dublează dimensiunea structurii interne a tabelei de dispersie. Dublarea se va face în momentul în care raportul dintre numărul de elemente introduse în hashtable size şi numărul de bucket-uri HMAX este mai mare decât o valoare aleasă (ex: //size / HMAX > 0.75//). Comportamentul dorit pentru această funcţionalitate este următorul: se redimensionează array-ul de bucket-uri, iar apoi fiecare bucket este parcus în ordine și elementele sunt redistribuite după valoarea **noului hash**. | 3) [**2p**] **Bonus:** Implementați și testați redimensionarea unui hashtable: funcția **resize** dublează dimensiunea structurii interne a tabelei de dispersie. Dublarea se va face în momentul în care raportul dintre numărul de elemente introduse în hashtable size şi numărul de bucket-uri HMAX este mai mare decât o valoare aleasă (ex: //size / HMAX > 0.75//). Comportamentul dorit pentru această funcţionalitate este următorul: se redimensionează array-ul de bucket-uri, iar apoi fiecare bucket este parcus în ordine și elementele sunt redistribuite după valoarea **noului hash**. | ||
- | <hidden> | ||
**Observaţie (pentru asistenți):** | **Observaţie (pentru asistenți):** | ||