首页
/
每日頭條
/
科技
/
學生手機号碼尾号什麼最好
學生手機号碼尾号什麼最好
更新时间:2025-11-29 12:45:31

之前寫了一個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
推荐阅读
coloros12文件夾推薦應用
coloros12文件夾推薦應用
俗話說一心不可二用,但一屏可以兩用!今天給大家推薦的是ColorOS12系統的特色功能之『應用分屏』。這樣我們就可以同時看劉畊宏和李佳琪的直播啦!設置路徑設置-特色功能-應用分屏,開啟應用分屏和三指上滑啟動分屏功能的開關。如何使用應用分屏功...
2025-11-29
聯想拯救系統怎麼退出
聯想拯救系統怎麼退出
聯想拯救系統怎麼退出?看看你的機箱前面闆上是不是有個紅色撥動開關,關掉計算機,撥動那個開關到另個位置,再開機即可”如果裝XP系統藍屏的話,你把硬盤模式改為兼容模式因該就可以了,今天小編就來說說關于聯想拯救系統怎麼退出?下面更多詳細答案一起來...
2025-11-29
碧藍航線2月25日更新的艦船圖鑒
碧藍航線2月25日更新的艦船圖鑒
碧藍航線有關2月27日的改建更新内容,在近日正式公開,這個更新後将開啟北方聯合大型活動開啟,同時還有系統優化的内容,維護時間從上午9點持續到下午3點,來看看具體的更新總結吧。1.北方聯聯合活動開啟上篇時間:2.27-3.12下篇時間:2.2...
2025-11-29
手機清理垃圾方法vivo
手機清理垃圾方法vivo
手機清理垃圾方法vivo?首先我們可以清理後台的程序,給手機騰出更多的運行空間,當你手機運行程序過多的時候,也會使手機變卡頓的,所以可以點擊手機的任務按鈕,點擊【×】清除所有後台程序,減輕運行負擔,今天小編就來聊一聊關于手機清理垃圾方法vi...
2025-11-29
硬盤分區的盤符是什麼
硬盤分區的盤符是什麼
硬盤分區的盤符是什麼?對于電腦來說,硬盤通常會劃分出2-6個分區,正常情況下,不可能将從A到Z的26個盤符全部用完,因為你需要新建26個分區,這是很少見的但是近期卻有不少好奇心重的用戶咨詢這個問題,如果硬盤分區盤符分配從A到Z之後,那麼繼續...
2025-11-29
Copyright 2023-2025 - www.tftnews.com All Rights Reserved