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

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;

}
...全文
118 3 打赏 收藏 举报
写回复
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
  • 打赏
  • 举报
回复
没学过计算机编译原理吧
相关推荐
发帖
其它技术问题

3880

社区成员

C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
帖子事件
创建了帖子
2015-02-08 12:10
社区公告
暂无公告