幾種語言的執行速度比較

2021-05-21 23:14:10 字數 820 閱讀 5489

本文比較了perl,ruby,c++,c的執行速度的比較。精確的比較應該是針對不同的資料級別進行多次實驗才能得出,本文只能得出乙個印象中的執行時間

比較。程式是計算第n個素數,使用的演算法類似於篩選法。分別為c++,c,perl,和ruby的**(csdn中插入**中沒有c和perl)。

以下是執行時間的對比:

c:real 0m3.111s

user 0m3.032s

sys 0m0.004s

c++:

real 0m7.064s

user 0m6.980s

sys 0m0.000s

perl 5.10.0:

real 2m56.257s

user 2m52.227s

sys 0m0.228s

ruby 1.8.7:

real 7m17.123s

user 5m58.746s

sys 1m13.897s

由此可以c++和perl的執行速度大概在20倍左右。

c++和ruby的執行速度大概在60倍左右。

而c是最快的。

當然,在這個比較中,各個**還有一些改進的空間(如c++中可以先為vector reserve一段空間,或在這裡根本不需要動態增長等)。

而且,perl和ruby是包含了編譯時間在裡面的(因為**量較少,因此省略掉了)。但是也能在數量級上反應**執行的速度。

另外,個人是比較喜歡ruby的,它具有一般動態語言的特點,而且**比perl要容易理解,比perl和python要更加純粹的物件導向,據說其已經

擺脫了最慢的動態語言的標籤,不知道什麼時候能再快一些。

執行速度對比

2018 04 12 pyspark master spark node1 7077 num executors 100 executor memory 6g executor cores 5 driver memory 1g conf spark.default.parallelism 1000 ...

C語言之優化執行速度

1 選擇合適的演算法和資料結構 選擇一種合適的資料結構很重要,如果在一堆隨機存放的數中使用了大量的插入和刪除指令,那使用鍊錶要快得多。陣列與指標語句具有十分密切的關係,一般來說,指標比較靈活簡潔,而陣列則比較直觀,容易理解。對於大部分的編譯器,使用指標比使用陣列生成的 更短,執行效率更高。在許多種情...

Mysql執行速度優化

1 create table t select from t old where 1 0 2 create table t like t old 3 create table t 其中 1 最快,但是它取消原來表的有些定義。自增字段 表引擎都變了,如果想要保持一樣的引擎,就在table名稱後邊加上 ...