快速求幂(位操作)的原理是什么?

qq_24746507 2015-02-08 12:10:18


快速求幂(位操作)
intpow3(inta,intb)
{

int r=1,base=a;

while(b!=0)

{

if(b&1)

r*=base;

base*=base;

b>>=1;

}

return r;

}
...全文
126 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_24746507 2015-02-09
  • 打赏
  • 举报
回复
是没学
fly_dragon_fly 2015-02-09
  • 打赏
  • 举报
回复
象快速填充一样, 举个例子吧,如a^5 , 由a*a => a^2, a^2 *a^2 => a^4 , a^4 * a =a ^5, 刚好跟二进制展开一样,从右往左看,遇遇0和1各自处理就可以
hlx_beat 2015-02-08
  • 打赏
  • 举报
回复
没学过计算机编译原理吧

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧