您的位置:首页 > 其它

快速幂

2015-08-26 20:54 246 查看


常规求幂

int pow1(inta,intb)
{
int r=1;
while(b--)
r*=a;
return r;
}



二分求幂(一般)

int pow2(inta,intb)
{
int r=1,base=a;
while(b!=0)
{
if(b%2)
r*=base;
base*=base;
b/=2;
}
return r*base;
}



快速求幂(位操作)

intpow3(inta,intb)
{
int r=1,base=a;
while(b!=0)
{
if(b&1)
r*=base;
base*=base;
b>>=1;
}
return r;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: