rust比java慢,rust为什么跑得比js慢
問題描述
實現一個計算斐波那契數列的遞歸函數, rust代碼和js代碼在我的電腦上耗時都是11秒, js甚至比rust快一點
問題出現的環境背景
本人剛接觸rust,聽說它的性能可以和C++媲美,所以就想比較一下到底比js快多少,可是程序跑出來的結果和想象中的不太一樣,順帶一提,在我同事的電腦上用C++跑耗時7秒,當傳入參數為50時,他那邊C++耗時73秒,我這邊rust耗時132秒,差別太大了
相關代碼
rust代碼:extern?crate?stopwatch;use?stopwatch::{Stopwatch};fn?fid(num:?u64)?->?u64?{????match?num?{????????0?=>?0,????????1?=>?1,
_?=>?fid(num?-?1)?+?fid(num?-?2)
}
}fn?main(){????let?sw?=?Stopwatch::start_new();????let?num?=?fid(45);????println!("{}",num);????println!("耗時:?{}ms",?sw.elapsed_ms());
}
js代碼:function?fid(n)?{??if?(n?==?0)?return?0;??if?(n?==?1)?return?1;??return?fid(n-1)?+?fid(n-2)
}
fib(45)
你期待的結果是什么?實際看到的錯誤信息又是什么?
按理來說rust的速度應該比js快很多才對吧?希望大佬們能指點一下我是不是rust代碼哪里用錯了,或者是有什么地方可以優化的,謝謝.
總結
以上是生活随笔為你收集整理的rust比java慢,rust为什么跑得比js慢的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php升级的痛苦,升级 PHP 7.4
- 下一篇: java keeplive,java h