快速幂

原理:将一个数的幂分解为二进制进行处理,同一位幂只需处理一次,出去了两两相乘的重复操作;

呈上代码:
int quickpow(int q,int n){ \n为幂次,q为底数
int result=1;
while(n){ \n大于1时
\位运算,当n二进制末位为1时
if(n&1){
result*=q;

}
q*=q;
n>>=1;
}
return result;
}

posted @ 2020-08-16 11:46  Auterman  阅读(196)  评论(0)    收藏  举报