首页
/
每日頭條
/
科技
/
學生手機号碼尾号什麼最好
學生手機号碼尾号什麼最好
更新时间:2025-12-10 02:22:39

之前寫了一個100W條記錄中查找特定數據的性能測試,和遍曆算法做了比較,二分法性能強很多.

今天我用二分法和bitmap數據結構存儲來比較下:

場景一:

200W條手機号碼記錄中查找特定手機号碼的記錄需要花費的時間:

學生手機号碼尾号什麼最好(200W手機号碼中查找特定号碼)1

可以看到查找手機号碼: 19998600000,兩種算法所用的時間差距還是比較明顯的,

bitmap強于二分法,效率大概是7倍,效果也比較明顯,bitmap屬于使用空間換時間,因此bitmap所要占用的内存空間會更大,需要事先根據數據量和存儲的數據大小來申請存儲空間,對于兩種算法的取舍還是要基于當前的業務場景

大家如果有更好的想法,歡迎交流學習!!!!!

下面就是go實現的bitmap算法的主要代碼:

type BitMap []byte

func NewBitMap(max int) BitMap {

return make([]byte, (max>>3) 1)

}

func (b BitMap) Set(n uint) {

if (n >> 3) > uint(len(b)) {

fmt.Println("數字太大超過最大存放範圍")

return

}

index := n >> 3

pos := n & 0x07

b[index] = b[index] | 1<<pos

}

func (b BitMap) Get(n uint) bool {

if (n >> 3) > uint(len(b)) {

fmt.Println("數字太大超過最大存放範圍")

return false

}

index := n >> 3

pos := n & 0x07

return b[index]&(1<<pos) != 0

}

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
電腦屏幕的錄制怎麼操作
電腦屏幕的錄制怎麼操作
對于日常辦公的小夥伴來說,電腦、鍵盤、鼠标等辦公設備都是不可分割的。事實上,不僅僅是在日常辦公,在很多業餘的活動中,也會使用到電腦設備。在使用電腦的時候,會經常有需要錄制電腦屏幕的情況,比如記錄會議、錄制網課等等。電腦屏幕錄制怎麼弄?電腦上...
2025-12-10
當你的孩子沉迷手機怎麼辦
當你的孩子沉迷手機怎麼辦
媽媽,我想玩一下手機。等一下,我還沒玩好呢!我還要再玩一會兒……每逢假期,都會有家長抱怨說:快被孩子愁死了,一天到晚就抱着手機玩,連吃飯都喊不動!尤其是對于青春期的孩子而言,說多了不行,說少了又不管用,講道理又嫌煩……談及孩子玩手機,很多家...
2025-12-10
C語言入門常寫的三個代碼
C語言入門常寫的三個代碼
C語言入門常寫的三個代碼?今天我們要看的是C語言常寫的三個代碼,今天小編就來說說關于C語言入門常寫的三個代碼?下面更多詳細答案一起來看看吧!C語言入門常寫的三個代碼今天我們要看的是C語言常寫的三個代碼。打印100~200之間的素數常用的方法...
2025-12-10
nosql數據庫與數據倉庫
nosql數據庫與數據倉庫
概述前面已經對Cassandra的一些概念性東西做了介紹,所以就不多說明了,今天主要分享Cassandra的數據存儲結構幾種形式--CommitLog、Memtable和SSTable,下面一起看看吧!Cassandra的數據存儲結構Cas...
2025-12-10
手機怎麼遠程控空調
手機怎麼遠程控空調
科技的發展為我們的生活帶來無盡可能,空調的出現讓人們擺脫了嚴寒酷暑,替換了原本的風扇,遠程控制更是解決了出現在生活中的諸多問題。生活中的家居智能空調自帶遠程控制功能,但是辦公樓在建設時安裝的一般是中央空調,而且不配備遠程控制功能,如果遇到沒...
2025-12-10
Copyright 2023-2025 - www.tftnews.com All Rights Reserved