Middle
Ako sa určuje veľkosť hash tabuľky?
sobes.tech AI
Odpoveď od AI
Veľkosť hash tabuľky (jej kapacita) sa zvyčajne určuje pri vytváraní inštancie triedy. Často sa to robí nastavením počiatočnej kapacity v konštruktore.
Ak počiatočná kapacita nie je uvedená, používa sa predvolená hodnota (napríklad 16 pre HashMap v Jave).
Pri pridávaní prvkov, ak počet prvkov presiahne súčin aktuálnej kapacity a faktora zaťaženia (load factor, predvolene 0.75), hash tabuľka automaticky zväčší svoj rozmer (zvyčajne zdvojnásobí) a prepočítava hash hodnoty všetkých prvkov (rehashing).
Príklad konštruktora s určením počiatočnej kapacity:
// Vytvorenie HashMap s počiatočnou kapacitou 32
Map<String, Integer> map = new HashMap<>(32);
Týmto spôsobom sa veľkosť dynamicky riadi na základe počiatočnej konfigurácie a aktuálnej záťaže.