欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

HashMap加載因子為什么是0.75

本篇內(nèi)容主要講解“HashMap加載因子為什么是0.75”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“HashMap加載因子為什么是0.75”吧!

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的鄖西網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

加載因子是哈希表在其容量自動(dòng)增加之前可以達(dá)到多滿的一種尺度,它衡量的是一個(gè)散列表的空間的使用程度,負(fù)載因子越大表示散列表的裝填程度越高,反之愈小。

HashMap加載因子為什么是0.75

對(duì)于使用鏈表法的散列表來說,查找一個(gè)元素的平均時(shí)間是  O(1+a)。因此如果負(fù)載因子越大,對(duì)空間的利用更充分,然而后果是查找效率的降低;如果負(fù)載因子太小,那么散列表的數(shù)據(jù)將過于稀疏,對(duì)空間造成嚴(yán)重浪費(fèi)。

如果你看過源代碼,你會(huì)發(fā)現(xiàn)在初始條件下,HashMap 在時(shí)間和空間兩者間折中選擇了 0.75

/** * The load factor used when none specified in constructor. */  static final float DEFAULT_LOAD_FACTOR = 0.75f;

但是為什么一定是 0.75?而不是 0.8,0.6,這里有一個(gè)非常重要的概念:泊松分布。

相信大家都學(xué)過概率論,對(duì)這個(gè)大名鼎鼎的定律感覺應(yīng)該是既熟悉又陌生。本篇文章的重點(diǎn)不是為大家普及概率論知識(shí),這里就簡(jiǎn)單介紹下。

泊松分布是最重要的離散分布之一,它多出現(xiàn)在當(dāng)X表示在一定的時(shí)間或空間內(nèi)出現(xiàn)的事件個(gè)數(shù)這種場(chǎng)合。

HashMap加載因子為什么是0.75

舉個(gè)簡(jiǎn)單的例子,假如你一個(gè)老板,新開張了一家酒店,這個(gè)時(shí)候應(yīng)該如何準(zhǔn)備一天所用的食材呢?

準(zhǔn)備的太多,最后賣不掉這么多菜只能浪費(fèi)扔掉;準(zhǔn)備不夠,又接不了生意。但是你有很多同行和朋友,他們會(huì)告訴你很多經(jīng)驗(yàn)。

比如把一天分成幾個(gè)時(shí)間段,上午、下午、晚上每個(gè)時(shí)間段大概會(huì)來多少個(gè)客人,每一桌大概會(huì)點(diǎn)幾個(gè)菜。綜合下來,就可以大致知道在一天的時(shí)間內(nèi),估計(jì)出需要準(zhǔn)備的食材數(shù)量。

我們接下來看看 HashMap 源碼注釋的原話:

Ideally, under random hashCodes, the frequency of nodes in bins follows a  Poisson distribution with a parameter of about 0.5 on average for the default  resizing threshold of 0.75, although with a large variance because of resizing  granularity. Ignoring variance, the expected occurrences of list size k are  (exp(-0.5) * pow(0.5, k) /factorial(k)).

0: 0.60653066
1: 0.30326533
2: 0.07581633
3: 0.01263606
4: 0.00157952

5: 0.0001579

6: 0.00001316

7: 0.00000094

8: 0.00000006    

more: less than 1 in ten million

翻譯過來說的是,在理想情況下,使用隨機(jī)哈希碼,節(jié)點(diǎn)出現(xiàn)的頻率在 hash 桶中遵循泊松分布。

對(duì)照桶中元素個(gè)數(shù)和概率的表,可以看到當(dāng)用 0.75 作為加載因子時(shí),桶中元素到達(dá) 8 個(gè)的時(shí)候,概率已經(jīng)變得非常小,因此每個(gè)碰撞位置的鏈表長(zhǎng)度超過 8  個(gè)是幾乎不可能的,因此在鏈表節(jié)點(diǎn)到達(dá) 8 時(shí)才開始轉(zhuǎn)化為紅黑樹。

到此,相信大家對(duì)“HashMap加載因子為什么是0.75”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

文章名稱:HashMap加載因子為什么是0.75
路徑分享:http://aaarwkj.com/article24/ihhjce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、面包屑導(dǎo)航、標(biāo)簽優(yōu)化、電子商務(wù)、動(dòng)態(tài)網(wǎng)站、域名注冊(cè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
日本不卡高清视频在线播放| 日本精品在线不卡视频| 91午夜福利国产在线观看| 久久99精品国产99久久无| 亚洲男人天堂av电影| 激情网站免费在线观看| 国产精品无遮挡猛进猛出| 国产精品又大又黑又长又粗| 亚洲欧美半夜激情一区二区| 国产精品国产成人免费看| 亚洲精品网址一区二区| 乱色熟女一区二区三区| 国产精品免费视频能看的| 亚洲精品紧身裙女教师av| 亚洲日本精品国产第一区| 综合av在线一区天堂| 91精品国产91久久综合桃花| 日韩中文字幕乱码卡一| 正在播放蜜臀av在线| 超碰欧美黄色免费在线| 日本欧美激情在线观看| 国产又粗又爽视频免费| 精品一区二区三区在线观看国产| 精品丝袜熟女一区二区三区| 不卡av免费在线网址| 国产精品中文第一字幕| 国产亚洲欧美精品在线观看| 国产精品亚洲伦理在线| 欧美特黄高清在线观看| 熟女一区二区三区免费视频| 高清av中文免费在线| 国产一区二区三区精品久| 久久久国产精品免费看| 另类国产人妖免费视频网站大全| 日韩欧美国产午夜精品| 日韩欧美一区二区在线播放| 五月婷婷丁香六月在线综合| 少妇肥臀一区二区三区| 天堂中文在线免费观看av| 极品女神福利视频久久| 精品av一区二区在线|