2. välikoe, tehtävä 1 Arvosteluperusteita (Marja Huovinen) Maksimipisteet 5, kohdasta a) 2 ja kohdasta b) 3. Kuitenkin pisteytykseen on vaikuttanut kokonaisvaikutelma vastauksesta (miten hyvin vastaaja näyttää vastauksen perusteella osaavan asian), esimerkiksi yleensä on saanut vain 2 pistettä jos a-kohta on jätetty kokonaan vastaamatta, vaikka b olisi tehty ihan hyvin. Pisteytysperusteita: a) Tässä kohdassa piti kuvailla hajautusfunktio ja jokin tapa miten saadaan henkilötunnuksesta hajautusavain. Lisäksi hajautusfunktion valintaa piti osata jotenkin järkevästi perustella. Pisteitä ei vähennetty, vaikka valittu tapa muuttaa sotu avaimeksi ei tuottaisi kovin hyvin skaalautuvia arvoja. Tietysti antoi hyvän vaikutelman, jos asiaa oli huomattu pohtia. Hajautusfunktioista jakojäännösmenetelmä toimii hyvin, jos koko on alkuluku eikä ole lähellä jotain kakkosen potenssia, mitä 10000n ei selvästi ole. Siispä haettiin kertolaskumenetelmää (edellämainittu seikka perusteluna). Oikein selitetyllä jakojäännösmenetelmällä (jossa sosiaaliturvatunnuksesta saatiin generoitua riittävän suuria arvoja niin että aineisto hajautuu koko tauluun) saattoi saada 1 pisteen. Jotkut esittivät, että voisi käyttää jakojäännösmenetelmää niin, että valitaan jakajaksi jokin alkuluku joka on pienempi tai suurempi kuin taulukon koko. Jos jakaja on suurempi (eikä oteta tuloksesta enää jakojäännöstä taulukon koko jakajana), hajautetaan ohi taulun. Jos taas pienempi, jäävät viimeiset indeksit käyttämättä. Lisäksi pitäisi vielä löytää se sopiva alkuluku. Kovin moni ei maininnut vastauksessa, että taulukon koon muuttuessa täytyy uudelleenhajauttaa jo talletetut avaimet. Tästä ei vähennetty pisteitä. Joillakin menivät hajautusfunktiot ja yhteentörmäysten ratkaisustrategiat sekaisin. Esimerkiksi ketjutuksessa voi käyttää sekä jakojäännös- että kertolaskumenetelmää ja neliöllinen kokeilu ja kaksoishajautus eivät ole hajautusfunktioita. b) Tässä piti selittää, mikä on yhteentörmäys ja kuvailla jokin ratkaisustrategia. Pseudokooditasolle ei tarvinnut mennä, hyvä sanallinen selitys oli riittävä. Aikavaativuus piti jotenkin osata perustella sen lisäksi että osui oikeaan, "keskimäärin vakioinen" tai "pahimmassa tapauksessa lineaarinen" kävivät yhtä hyvin sikäli kun pitivät paikkaansa ko. menetelmän suhteen. Yleisin menetelmä oli ketjutus. Jos valitsi avoimen hajautuksen, täysiin pisteisiin tuli mainita poiston toteuttaminen DEL-merkinnällä jotta muiden avainten kokeilujonot eivät mene sekaisin.