Skip to main content
 
To je arhiv spletne učilnice za leto 2021/22. Aktualna spletna učilnica je na naslovu https://ucilnica.fmf.uni-lj.si
Učilnica 21/22
  • English ‎(en)‎
    English ‎(en)‎ Slovenščina ‎(sl)‎
You are currently using guest access (Log in)

Računalništvo 2

  1. Home
  2. Courses
  3. Praktična matematika
  4. 3. letnik
  5. RAČ2
  6. Vaje 21_22
  7. Vaje 21.4.2022 Zgoščevalne funkcije

Vaje 21.4.2022 Zgoščevalne funkcije

Completion requirements
Opened: Wednesday, 20 April 2022, 12:00 AM
Due: Wednesday, 27 April 2022, 12:00 AM

1) V zgoščevalno tabelo velikosti 11 (n = 11) vstavimo ključe iz seznama [23, 1, 13, 11, 24, 33, 18, 42, 31] z zgoščevalno funkcijo h(x) = x mod n

Kakšna izgleda tabela glede na različne pristope reševanja trkov. Uporabi veriženje ter linearno in kvadratično iskanje(probing). Do kakšnih problemov lahko pridemo pri teh pristopih? Kaj bi bilo, če bi uporabili kakšno drugo zgoščevalno funkcijo oblike h(x) = ax mod n za nek a različen od 0 in manjši od n? Bi lahko za poljuben a našel zaporedje ključev, ki bi ustvaril veliko trkov? Naštej še kakšne standardne zgoščevalne funkcije.

2) Univerzalno zgoščevanje

U (univerzalna)  in V naj bosta množici, kjer je velikost U ogromno večja kot velikost V. Družini preslikav H iz U v V rečemo univerzalna, če za vsak x != y iz U velja Pr[h(x) = h(y)] <= 1/n, kjer preslikavo h vzamemo naključno iz družine H ter n = IVI.

2.1) Pokaži, da je H = {ax mod n : a iz Z_n} univerzalna družina.

2.2) Naj bo h zgoščevalna funkcija iz univerzalne družine (izbrana naključno). Recimo, da želimo v tabelo shranit m ključev. Definiramo "load factor" alpha = m/n. Koliko je povprečno število trkov? Kaj lahko poveš o dolžini najdaljše verige? Namig: Indikatorji, linearnost pričakovane vrednosti

Od tu naprej nalog ni potrebno vključevati v poročilo! -------------------------------

2.3) Razvij zgoščevalno tabelo/funkcijo, kjer bodo vse poizvedbe konstantne. Konstrukcija mora biti narejena v linearnem času. Namig: Kaj se zgodi, če vzamemo alpha = 1/n + točka 2.2)


3) Kako bi zgoščevanje posplošili na druge tipe podatkov:

  • vektorji v R^k
  • nizi
  • sestavljeni objekti

4) V točki 3) smo za nize omenili "rolling hash" funkcijo. Recimo, da imamo niz s[1...n] dolžine n. Razvij algoritem, ki hitro odgovarja na poizvedbe oblike "kakšna je hash vrednost pod niza s[i...j]" za neka 0 < i < j < n

5) Imamo niz s[1...n] dolžine n in množico nizov P = {p_1, ..., p_k} in recimo, da so vsi p_i dolžine m. Razvij algoritem, ki odgovori koliko nizov iz P se kot podniz pojavi v s. Za vsak p iz P povej kolikokrat se pojavi v s.

◄ Vaje 14.4.2022 Minimalna vpeta drevesa 2
Zaključna oddaja poročil ►
Skip Navigation
Navigation
  • Home

    • Site pages

      • My courses

      • Tags

    • My courses

    • Courses

      • Praktična matematika

        • 1. letnik

        • 2. letnik

        • 3. letnik

          • MM (PRA)

          • MEH

          • NUM2 (PRA)

          • PDE (PRA)

          • PB1

          • PU

          • PROG3

          • RAČ1

          • RAČ2

            • General

            • Vaje 21_22

              • AssignmentVaje 17. 2 (Dinamično programiranje uvod)

              • AssignmentVaje 24.2.2022 Dinamično programiranje 2

              • AssignmentVaje 3. 3. (Dinamično programiranje 3)

              • AssignmentVaje1 0.3.2022 podzaporedja

              • AssignmentVaje 17.3.2022 Floyd Warshall

              • AssignmentVaje 24.3.2022 Dijkstrov algoritem

              • AssignmentVaje 31.3.2022 Bellman Ford, A*

              • AssignmentTekmovanje 31.3.2022 Iskanje najkrajših poti

              • AssignmentVaje 7.4.2022 Minimalna vpeta drevesa

              • AssignmentVaje 14.4.2022 Minimalna vpeta drevesa 2

              • AssignmentVaje 21.4.2022 Zgoščevalne funkcije

              • AssignmentZaključna oddaja poročil

            • Seminarska naloga

            • O algoritmih in Strategije razvoja algoritmov

            • Dinamično programiranje - splošno

            • Dinamično programiranje - Matrično množenje

            • Dinamično programiranje - podzaporedja

            • Problem najkrajših poti

            • Dinamično programiranje - najkrajše poti

            • Problem najkrajših poti - Dijkstra

            • Najkrajše poti - Bellman Ford / A*

            • Minimalno vpeto drevo (MVD)

            • Zgoščena tabela / Zgoščevalna funkcija

            • Za konec ...

        • ŠTUD (PRA)

      • Matematika

      • Finančna matematika

      • Pedagoška matematika

      • IŠRM

      • Fizika

      • Aplikativna fizika

      • Fizikalna merilna tehnika

      • Zunanji predmeti

      • Razno

You are currently using guest access (Log in)
RAČ2
  • English ‎(en)‎
    • English ‎(en)‎
    • Slovenščina ‎(sl)‎
Data retention summary
Get the mobile app