成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

大數(shù)據(jù)計數(shù)原理1+0=1這你都不會算(二)

企業(yè)動態(tài)
如果我們估計有N個數(shù),那么我們至少需要N*32bit(按照int在32位操作系統(tǒng)下占用32個bit)的空間來進行存儲,這太費錢了。有沒有辦法進行改進呢?這就引出了一個新的數(shù)據(jù)結(jié)構(gòu) - BitMap。

上一次我們說完了用 HashSet 來進行計數(shù)了。我們可以發(fā)現(xiàn),如果我們估計有N個數(shù),那么我們至少需要N*32bit(按照int在32位操作系統(tǒng)下占用32個bit)的空間來進行存儲,這太費錢了。有沒有辦法進行改進呢?這就引出了一個新的數(shù)據(jù)結(jié)構(gòu) - BitMap。

這時候看到一張圖代表了一個存儲int的字節(jié)bit信息。

我們可以發(fā)現(xiàn),每一個bit都有自己的值,比如一個int的空間除了作為int類型的數(shù)字外,是否還可以做其他的利用?數(shù)字可以表示0~31位置的情況,如果我們使用bit的位置信息來存儲會怎樣?我們來試試看。

如果我們得到Hash的值為0,那就直接將第0位置上的bit位置為1。

如果我們得到Hash的值為31,那就直接將第31上的bit位置為1。

如果發(fā)現(xiàn)位置上已經(jīng)有值了,那當(dāng)前的值就已經(jīng)存在了,不再進行統(tǒng)計,這樣子就可以完成超大數(shù)據(jù)量的統(tǒng)計啦。

這樣進行存儲的數(shù)據(jù)結(jié)構(gòu)就叫BitMap,使用每個bit位來進行信息存儲,而不是一個int數(shù)字。

那有小伙伴就有疑問了,如果超過了32個數(shù)字怎么辦?

可以使用數(shù)組來進行拓展,比如一個a = int[2]的數(shù)組。

a[0] 可以表示0~31位,a[1] 可以表示32~63位,以此類推,幾乎可以***大。如果數(shù)據(jù)確實非常巨大,連下標也到達int的界限了,也可以用其他的單個空間更大的數(shù)據(jù)類型來進行存儲。

相比較于HashSet,BitMap 進行統(tǒng)計所使用的存儲只需要 HashSet 的1/32。但是這個數(shù)據(jù)結(jié)構(gòu)簡單,相對于 HashSet 有一點小問題,就是hash在數(shù)據(jù)量巨大的情況下,碰撞會比較嚴重,那么統(tǒng)計精度會下降,需要怎么改善呢?請關(guān)注下一篇布隆過濾器。

【本文為51CTO專欄作者“大蕉”的原創(chuàng)稿件,轉(zhuǎn)載請通過作者微信公眾號“一名叫大蕉的程序員”獲取授權(quán)】

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2017-09-19 15:09:50

大數(shù)據(jù)計數(shù)原理

2017-09-30 08:05:41

大數(shù)據(jù)計數(shù)原理

2017-09-26 15:51:29

大數(shù)據(jù)計數(shù)原理

2017-10-25 16:03:08

大數(shù)據(jù)計數(shù)原理

2017-10-27 15:23:56

大數(shù)據(jù)計數(shù)原理

2017-10-13 16:32:49

大數(shù)據(jù)計數(shù)原理

2017-09-15 17:49:25

大數(shù)據(jù)計數(shù)原理

2022-03-27 22:07:35

元宇宙虛擬人IBM

2015-03-16 11:33:16

程序員代碼bug

2021-07-07 06:54:37

網(wǎng)頁Selenium瀏覽器

2017-02-08 19:49:03

內(nèi)存SSDDRAM

2023-05-16 07:15:11

架構(gòu)模型對象

2019-12-26 09:56:34

Java多線程內(nèi)部鎖

2021-04-20 09:55:37

Linux 開源操作系統(tǒng)

2020-09-27 06:50:56

Java互聯(lián)網(wǎng)注解

2014-12-11 10:01:09

程序員

2010-10-26 11:05:27

霍金

2016-09-13 22:46:41

大數(shù)據(jù)

2019-07-09 13:19:02

微軟瀏覽器Windows

2019-12-17 15:10:21

Python字符串代碼
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成人无遮挡毛片免费看 | 99国产视频 | 国产美女自拍视频 | av先锋资源 | 国产激情一区二区三区 | av在线成人 | 亚洲精品自在在线观看 | 西西裸体做爰视频 | 在线观看成人精品 | 亚洲男女视频在线观看 | 可以免费看的毛片 | 亚州精品天堂中文字幕 | 欧美性受| 超级碰在线| 一级爱爱片 | 国产黄色在线观看 | 国产精品特级毛片一区二区三区 | www成人免费 | 久久久久无码国产精品一区 | 国产成人精品一区二区三区在线 | 亚洲精品自在在线观看 | 九一国产精品 | 超碰97免费在线 | 欧美日在线| 色婷婷狠狠 | 欧美精品在线一区二区三区 | 欧美一区二区三区久久精品 | 人人鲁人人莫人人爱精品 | 日韩中文字幕在线 | 亚洲夜射 | 亚洲精品高清视频在线观看 | 欧美视频免费在线 | 中文成人在线 | 91成人精品 | 久久久久无码国产精品一区 | 亚洲一区二区三区在线播放 | 中文字幕视频在线 | 中文字幕 视频一区 | 在线观看日韩精品视频 | 青青操91| 国产在线精品一区二区三区 |