第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Golang:基數(shù)樹查找基準(zhǔn)

Golang:基數(shù)樹查找基準(zhǔn)

Go
倚天杖 2022-01-10 16:37:46
我一直在嘗試對我為使用 Golang 練習(xí)而編寫的 Radix Tree 實(shí)現(xiàn)進(jìn)行基準(zhǔn)測試。但是我在“我應(yīng)該如何對其進(jìn)行基準(zhǔn)測試?”上遇到了一個問題。在下面的代碼中顯示了兩種情況,或者說我想對 LookUp 函數(shù)進(jìn)行基準(zhǔn)測試的不同方式。案例1:使用樹上存在的一個字節(jié)片,這意味著它將通過所有子節(jié)點(diǎn)等成功查找...案例 2:使用 func 從樹中的現(xiàn)有數(shù)據(jù)生成隨機(jī)切片,這意味著它也將成功查找...我知道時間花費(fèi)將取決于樹的深度......我認(rèn)為案例 2 是否接近現(xiàn)實(shí)世界的實(shí)現(xiàn)?問題:哪種情況對基準(zhǔn)測試更有效或更有用?基準(zhǔn):func BenchmarkLookUp(b *testing.B) {    radix := New()    insertData(radix, sampleData2)    textToLookUp := randomBytes()    for i := 0; i < b.N; i++ {        radix.LookUp(textToLookUp) // Case 1         //radix.LookUp(randomBytes()) // Case 2    }}func randomBytes() []byte {    strings := sampleData2()    return []byte(strings[random(0, len(strings))])}func sampleData2() []string {    return []string{        "romane",        "romanus",        "romulus",        ...    }}結(jié)果案例一:PASSBenchmarkLookUp-4       10000000               146 ns/opok      github.com/falmar/goradix       2.068sPASSBenchmarkLookUp-4       10000000               149 ns/opok      github.com/falmar/goradix       2.244s結(jié)果案例2:PASSBenchmarkLookUp-4        3000000               546 ns/opok      github.com/falmar/goradix       3.094sPASSBenchmarkLookUp-4        3000000               538 ns/opok      github.com/falmar/goradix       4.481s不匹配時的結(jié)果:PASSBenchmarkLookUp-4       10000000               194 ns/opok      github.com/falmar/goradix       3.189sPASSBenchmarkLookUp-4       10000000               191 ns/opok      github.com/falmar/goradix       3.243s
查看完整描述

1 回答

?
鴻蒙傳說

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個贊

如果您的基準(zhǔn)是隨機(jī)的,那么從一次運(yùn)行到下一次比較不同實(shí)現(xiàn)之間的性能將變得非常困難。

相反,靜態(tài)實(shí)現(xiàn)一些不同的基準(zhǔn)案例,這些案例強(qiáng)調(diào)算法的不同領(lǐng)域。這些案例應(yīng)該代表不同的場景,例如沒有匹配項的情況(就像您已經(jīng)擁有的那樣),源數(shù)據(jù)中有很多項目將在查找中返回的情況,有很多項目的情況和只有 1 件商品將被退回,等等。


查看完整回答
反對 回復(fù) 2022-01-10
  • 1 回答
  • 0 關(guān)注
  • 176 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號