Sobes.tech
Junior

Z akých komponentov sa skladá hash tabuľka?

sobes.tech AI

Odpoveď od AI

Hash tabuľka pozostáva z:

  1. Pole (alebo zoznam): Hlavná dátová štruktúra, v ktorej sa ukladajú prvky. Niekedy sa nazýva "vedrá" (buckets) alebo "sloty".
  2. Hash funkcia: Funkcia, ktorá prijíma kľúč ako vstup a vracia index (celé číslo) v poli. Dobrá hash funkcia zabezpečuje rovnomerné rozloženie kľúčov v poli, minimalizujúc kolízie.
  3. Mechanizmus riešenia kolízií: Metóda na vyriešenie situácie, keď hash funkcia generuje rovnaký index pre rôzne kľúče. Dva hlavné spôsoby:
    • Oddelené reťazenie (Separate Chaining): Každý prvok poľa uchováva ukazovateľ na zoznam (spojený zoznam, B-strom atď.) prvkov, ktoré boli hashované na tento index.
    • Otvárané adresovanie (Open Addressing): Pri kolízii sa hľadá iné voľné miesto v samotnom poli na umiestnenie prvku. Stratégie vyhľadávania:
      • Lineárne sondovanie (Linear Probing)
      • Kvadratické sondovanie (Quadratic Probing)
      • Dvojité hashovanie (Double Hashing)
  4. Operácie: Implementácia základných operácií: vkladanie (insert), vyhľadávanie (search), mazanie (delete). Tieto operácie používajú hash funkciu na určenie umiestnenia prvkov v poli a mechanizmus riešenia kolízií podľa potreby.