Sobes.tech
Junior

Millistest komponentidest koosneb hajutustabel?

sobes.tech AI

Vastus AI-lt

Hash-tabel koosneb:

  1. Massiiv (või nimekiri): Peamine andmestruktuur, kuhu salvestatakse elemendid. Mõnikord nimetatakse neid "ämbriteks" (buckets) või "lõksudeks".
  2. Hash-funktsioon: Funktsioon, mis võtab sisendina võtme ja tagastab indeksi (täisarvu) massiivis. Hea hash-funktsioon tagab võtmete ühtlase jaotumise massiivis, minimeerides kokkupõrked.
  3. Kokkupõrgete lahendamise mehhanism: Meetod olukorra lahendamiseks, kui hash-funktsioon genereerib erinevatele võtmetele sama indeksi. Kaks peamist meetodit:
    • Eraldatud ahelad (Separate Chaining): Iga massiivi element hoiab viit selle indeksiga seotud elementide loendile (sidusloend, B-puu jne).
    • Ava aadressimine (Open Addressing): Kokkupõrke korral otsitakse teist vaba kohta samas massiivis, kuhu element paigutada. Otsingustrateegiad:
      • Lineaarne proovimine (Linear Probing)
      • Kvadraatne proovimine (Quadratic Probing)
      • Topelth Hashing (Double Hashing)
  4. Operatsioonid: Põhitoimingute rakendamine: sisestamine (insert), otsing (search), kustutamine (delete). Need toimingud kasutavad hash-funktsiooni elementide asukoha määramiseks massiivis ning kokkupõrgete lahendamise mehhanismi vajadusel.