看了大佬@魚丸粗麪一碗的文章:《這段代碼,c 1秒,java 9秒,c# 14秒,而python。。。》,基於水仙花數的各種語言1W次性能比較,覺得很有意思。於是開啓cv大法,把我有環境的各種語言都跑了一遍,包括C++,C#.Net,C#.Net Core2.2,VB.Net,VB.Net Core2.2,Java,Python,Javascript,Go,NodeJs。代碼copy魚丸的,在github上放了一份:https://github.com/dreign/Test1W
我的電腦信息如下:
基本硬件展示
處理器 英特爾 第四代酷睿 i3-4170 @ 3.70GHz 雙核
主板 技嘉 H81M-S1
內存 16 GB ( 金士頓 DDR3 1600MHz )
主硬盤 OV-Blitz240GBSSD ( 240 GB / 固態硬盤 )
主顯卡 AMD Radeon R5 230 ( 1 GB )
顯示器 戴爾 DELA104 DELL E2418HN ( 24 英寸 )
網卡 瑞昱 RTL8168/8111/8112 Gigabit Ethernet Controller / 技嘉
聲卡 英特爾 英特爾 顯示器音頻 @ 英特爾 Haswell 高保真音頻
所有程序都是在win10環境下運行,測試的結果如下:
語言 | 執行時間(ms) | 水仙花總數 | 環境版本 | 備註 |
C++ | 0 | 60000 | gcc version 6.3.0 (MinGW.org GCC-6.3.0-1),Thread model: win32 | gcc -O 優化後,非常快,1億次也才30ms |
C#.Net | 5178 | 60000 | .Net FrameWork 4.5 | |
C#.Net Core2.2 | 5093 | 60000 | .Net Core 2.2 | |
VB.Net | 34303 | 60000 | .Net FrameWork 4.5 | |
VB.Net Core2.2 | 23848 | 60000 | Net Core 2.2 | |
Java | 4263 | 60000 | java version "1.8.0_181" | |
Python | 63727 | 60000 | Python 3.7.1 | |
Javascript | 28219 | 60000 | Google Chrome:版本 71.0.3578.98(正式版本) (64 位) | |
Node.js | 26298 | 60000 | v8.9.3 | |
Go | 5641 | 60000 | go version go1.10.1 windows/amd64 |
運行截圖:
c++
C#.Net4.5
C#.Net Core 2.2
VB.Net4.5
VB.Net Core 2.2
Java
Python
JavaScript
NodeJs
Go