Python算得真不慢!

本文以Python实现蒙特卡洛法计算圆周率为例,探讨Python的运行效率。通过纯Python计算,Numba加速及像素法数计算,展示Python在高性能计算中的优化策略。Numba加速可使计算速度提升约7倍,而在像素法中,Numba加速效果更佳。
摘要由CSDN通过智能技术生成


不定时更新,整理备份+个人实验。

举个例子

Python开发速度快,但是运行速度很慢,和静态的C/C++,Java相比,运行速度往往能相差百倍。(如果刷过力扣就会注意到python需要100+ms的算法,而Java只需要几ms,泪奔)
Python牺牲了运算速度而提高了开发速度,写辅助脚本是非常不错的选择,而作为高性能计算效果可能不如静态语言。
本文以蒙特卡洛法计算圆周率作为范例,探讨不同方案的优化情况。

蒙特卡洛法计算圆周率思路

参考自北京理工大学嵩天老师的慕课《Python程序设计》。
示意图
在正方向中任取一点,则此点落在圆内的概率
P = S c i r c l e S s q u a r e = π r 2 2 r ⋅ 2 r = π 4 P = \frac{S_\mathrm{circle}}{S_\mathrm {square}} = \frac{\pi r^2}{2r\cdot2r} = \frac{\pi}{4} P=Ssquare

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值