快速幂的求解-java方法(int范围之内)
Posted 给我一个团队,干翻TX
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速幂的求解-java方法(int范围之内)相关的知识,希望对你有一定的参考价值。
思想就是,将十进制数化成二进制数。其它就是很简单了。
如:2的11次幂,11的二进制位1011,所以2(11) = 2(2(0) + 2(1) + 2(3));
具体实现步骤,看代码比较简单
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
//底数
int a = cin.nextInt();
//指数
int b = cin.nextInt();
int sum = 1;
int temp = a;
while(b != 0)
{
//取其末位
if((b & 1) != 0)
{
sum = sum * temp;
}
temp = temp * temp;
//除其末位
b = b>>1;
}
System.out.print(sum);
}
}
以上是关于快速幂的求解-java方法(int范围之内)的主要内容,如果未能解决你的问题,请参考以下文章