没有合适的资源?快使用搜索试试~ 我知道了~
在讲解快速幂之前,让我们先来思考一个问题:7的10次方,怎样算比较快? 方法1:最朴素的想法,7*7=49,49*7=343,... 一步一步算,共进行了9次乘法。 这样算无疑太慢了,尤其对计算机的CPU而言,每次运算只乘上一个个位数,无疑太屈才了。这时我们想到,也许可以拆分问题。 方法2:先算7的5次方,即7*7*7*7*7,再算它的平方,共进行了5次乘法。 但这并不是最优解,因为对于“7的5次方”,我们仍然可以拆分问题。 方法3:先算7*7得49,则7的5次方为49*49*7,再算它的平方,共进行了4次乘法。 模仿这样的过程,我们得到一个在O(log n)时间内计算出幂的算法,也就是快速幂。 计算a的n次方,如果n是偶数(不为0),那么就先计算a的n/2次方,然后平方;如果n是奇数,那么就先计算a的n-1次方,再乘上a;递归出口是a的0次方为1。 递归快速幂的思路非常自然,代码也很简单(直接把递归方程翻译成代码即可) 这次的讲解就到这里了,希望大家对快速幂能有所了解,快速幂还包涵矩阵快速幂,快速幂的代码是需要背的,如果要熟练的话就只能多背!
资源推荐
资源评论































资源评论


Lemon_zqp
- 粉丝: 0
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 项目管理计划的3个不同层次.docx
- 消防配置设备设施接管验收移交表WINWGZAL.KF0637.doc
- 社会网络中心性对产业集群内信息资源传递的影响分析.docx
- 自动喷水灭火系统管道及系统组件安装分项工程质量技术交底卡.doc
- 面向智慧城市的电子政务信息资源管理研究.docx
- 煤矿机电自动化集控发展及其应用研究.docx
- 第4章--基本指令.ppt
- 商务会议团队合作.ppt
- 广东某市截污工程施工组织设计(第Ⅳ标段).doc
- 子课题中期总结报告wulb.docx
- 自动喷水灭火系统设计规范讲义.doc
- 电信运营商大数据平台规划研究.docx
- 各工种施工班组承包协议书汇总表(标准格式).doc
- 基于移动互联网技术的高校食堂特色订餐系统的设计.docx
- 单片机的天然气泄漏检测系统研究与设计开发.doc
- 陕西某道路绿化施工组织设计.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
