我有 2 個 golang 演算法,它們使用 for 回圈和遞回。我怎么知道我的兩種演算法消耗的速度和記憶體容量?
func forLoop(a int){
for i:=a; i>=0; i--{
fmt.Println("ForLoop = ",i)
}
}
func recursive(a int) int {
if(a<=0){
return 0
}else{
fmt.Println("Recursive = ",a)
return recursive(a-1)
}
}
uj5u.com熱心網友回復:
首先,撰寫兩個 Benchmark 測驗函式,一個用于呼叫每個演算法。
請參閱
然后,您可以比較在每個函式中花費的時間。
注意:
(可能適用于 vscode-go 0.29:檢查版本)
uj5u.com熱心網友回復:
使用 time.Now().UnixNano() 計算增量時間:
func main() {
t1 := time.Now().UnixNano()
forLoop(100)
recursive(100)
t2 := time.Now().UnixNano()
fmt.Print("cost ns",t2 - t1)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/338473.html
