Middle
Jak se určuje velikost hash tabulky?
sobes.tech AI
Odpověď od AI
Velikost hash tabulky (jej kapacita) se obvykle určuje při vytváření instance třídy. Často se to dělá nastavením počáteční kapacity v konstruktoru.
Pokud není počáteční kapacita uvedena, použije se výchozí hodnota (například 16 pro HashMap v Javě).
Při přidávání prvků, pokud počet prvků přesáhne součin aktuální kapacity a faktoru zatížení (load factor, výchozí 0.75), hash tabulka automaticky zvětší svůj rozměr (obvykle zdvojnásobí) a přepočítá hash hodnoty všech prvků (rehashing).
Příklad konstruktoru s určením počáteční kapacity:
// Vytvoření HashMap s počáteční kapacitou 32
Map<String, Integer> map = new HashMap<>(32);
Tímto způsobem se velikost dynamicky řídí na základě počáteční konfigurace a aktuální zátěže.