Kurssiviikko 12

Itseopiskelu

Viikon aihe: Hajautustaulut

Aiheiden opetusvideot ja kalvot:

Hajautustaulut

Hajautustaulujen toteutus

Hajautustaulun tehokkuus ja uudelleenhajautus

Hajautustaulut

Miten hakuavainta käytetään hajautustaulun yhteydessä?
Oletetaan, että halutaan tallentaa hajautustauluun kaksi hakuavainta \(k1\) ja \(k2\) ja niihin liittyvät tietueet. Oletetaan, että \(k1\) tallennetaan ennen hakuavainta \(k2\). Jos \(k1\) ja \(k2\) osoittavat samaan ämpäriin, miten tämä tilanne hoidetaan ketjutetussa hajautuksessa?
Oletetaan, että halutaan tallentaa hajautustauluun kaksi hakuavainta \(k1\) ja \(k2\) ja niihin liittyvät tietueet. Oletetaan, että \(k1\) tallennetaan ennen hakuavainta \(k2\). Jos \(k1\) ja \(k2\) osoittavat samaan ämpäriin, miten tämä tilanne hoidetaan suljetussa hajautuksessa?
Mitkä seuraavista ovat hyvän hajautusfunktion ominaisuuksia? (Enemmän kuin 1 ominaisuus voi olla oikea.)
Oletetaan, että käytetään STL:n std:unordered_map-säiliötä. Missä seuraavista tilanteista on muodostettava oma hajautusfunktio?
Uudelleenhajautus on välttämätöntä, kun …
Oletetaan, että käytetään hajautustaulua, jossa on ketjutettu hajautus. Mikä on tällaisen hajautustaulun täyttöaste?
Oletetaan, että käytetään hajautustaulua, jossa on ketjutettu hajautus. Oletetaan, että halutaan etsiä hakuavainta \(k\) hajautustaulusta. Mikä on suoritusaajan tehokkuuden kannalta pahin mahdollinen tilanne tälle etsimistoiminnolle?
Oletetaan, että käytetään hajautustaulua, jossa on ketjutettu hajautus ja hajautusfunktio jakaa hakuavaimet hyvin tasaisesti kaikkien ämpäreiden kesken. Kun määritellään, milloin uudelleenhajautus tehdään, on asetettava täyttöasteelle yläraja. Tämän ylärajan arvo on kompromissi, minkä kahden asian välillä?
Mikä seuraavista väittämistä on tarkin hajautustaulun yhden hakuoperaation tehokkuuden suhteen?
Muotoile kurssin kannalta keskeinen kysymys, johon tämän viikon videot antavat vastauksen.
Minkä videon aiheesta pitäisi erityisesti keskustella keskustelutilaisuudessa?
Oliko videoiden sisällössä jotain erityisen vaikeaa? Entä mielenkiintoista? Jotain josta haluaisit oppia lisää?

Lisäinformaatiota aiheesta:

Viikko12 - Sanasto

Viikkoharjoitusten palautettavat kotitehtävät

Tällä viikolla palautettavat tehtävät