Hashmap inaongeza ukubwa wake lini?

Orodha ya maudhui:

Hashmap inaongeza ukubwa wake lini?
Hashmap inaongeza ukubwa wake lini?
Anonim

Mara tu kipengele 13th (jozi ya thamani-muhimu) kitakapokuja kwenye Hashmap, itaongeza ukubwa wake kutoka chaguomsingi 24=ndoo 16 hadi 25=ndoo 32. Njia nyingine ya kukokotoa ukubwa: Wakati uwiano wa kipengele cha upakiaji (m/n) unafika 0.75 kwa wakati huo, hashmap huongeza uwezo wake.

Nini hutokea HashMap ikibadilisha ukubwa?

5 Majibu. Chaguo-msingi la Load Factor ni 0.75, yaani 3/4, ambayo ina maana kwamba jedwali la reli ya ndani litabadilishwa ukubwa wakati 75 kati ya thamani 100 zimeongezwa. FYI: resize inaitwa mara mbili pekee. Mara moja thamani ya kwanza inapoongezwa, na mara moja inapofika 75% kamili.

Je, ukubwa wa HashMap huathiri utendakazi wa HashMap?

Kurudia mionekano ya mkusanyiko kunahitaji muda sawia kwa "uwezo" wa mfano wa HashMap (idadi ya ndoo) pamoja na saizi yake (idadi ya upangaji wa thamani-msingi). Kwa hivyo, ni muhimu sana kutoweka uwezo wa kwanza kuwa juu sana (au kipengele cha mzigo chini sana) ikiwa utendakazi wa kurudia ni muhimu.

Ukubwa chaguomsingi wa HashMap ni upi?

Uwezo chaguomsingi wa awali wa HashMap ni 24 yaani 16. Uwezo wa HashMap huongezeka maradufu kila inapofikia kizingiti.

Je, ukubwa wa HashMap haubadiliki?

Ukubwa Usiobadilika: Kiwango cha kiwango cha juu zaidi cha vipengee vinavyoweza kuongezwa kwenye ramani hurekebishwa na mjenzi na saizi ya safu ya ndani ya hashmap pia imerekebishwa. Hii ina maana hakuna kubadilisha ukubwa au rehashing ya vipengee.

Ilipendekeza: