Sobes.tech
Junior — Middle

Hogyan növekszik a kosarak száma a HashMap hash-táblában elemek hozzáadásakor?

sobes.tech MI

Válasz az MI-től

Java-ban a HashMap-ban a kosarak (buckets) száma növekszik az elemek hozzáadásakor, amikor az elemek száma meghaladja a küszöbértéket (threshold), amely egyenlő a capacity * load factor (alapértelmezett load factor = 0.75). Amikor eléri ezt a küszöbértéket, végrehajtódik egy bővítési művelet (resize), amely során a kosarak tömbjének mérete megduplázódik, és minden meglévő elem újra elosztásra kerül az új kosarak között a új méret figyelembevételével.

Példa: ha az eredeti kapacitás 16, akkor 12 elem hozzáadásakor (16 * 0.75) a bővítés 32 kosárra történik.

Ez lehetővé teszi az hatékony hozzáférési és beszúrási idő fenntartását, miközben csökkenti az ütközések számát.