首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

R/Python/Java/C+/RJava/Cython/RCpp的计算速度比较:以Fibonacci迭代为例

个人魔怔于程序的运行效率,在此方面耗费了大量时间。这里归总了笔者做过的若干个语言的实验,都以Fibonacci序列的迭代计算法为例。由于实验时间较早,忘记了当时的硬件情况,当前不能公平的继续加入其它语言作比较了。

先上实验结果:

七种实现方式本质为三类:Cython,C++,RCpp的C/Cpp类;Java、RJava的java类;动态解释型的R和python。

计算速度方面: Cython,C++,RCpp最快;Java、RJava其次;R和python最慢。

编码舒适度方面: R和python最轻松自在;Cython,C++,RCpp其次;Java、RJava个人偏讨厌;

R

只测了Fibonacci(40),花费就已经达到了542.04秒;

Fibonacci(50)直接没有测,恐怕够睡一觉了——不要小看只增加了10个数。

Java

Fibonacci(40)运行了1.39秒

Fibonacci(50)运行了163.843秒

RJava

Fibonacci(40)运行了1.438秒

Fibonacci(50)运行了176.640秒

Python

Fibonacci(40)运行了66秒

Cython

Fibonacci(40)仅需0.668秒

C++

Fibonacci(50)运行了73.08秒

RCpp

Fibonacci(50)运行了37.44秒

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190121G03YCN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券