1.概念
快速幂就是快速算底数的n次幂。其时间复杂度为 O(log₂N), 与朴素的O(N)相比效率有了极大的提高。
2.算法代码
package cn.edu.hit;
import java.util.Scanner;
/**
* 快速幂算法
* 利用二进制
* @author admin
*
*/
public class Exponentiation {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
int n = in.nextInt();
int result = 1;
while(n>0){
if((n & 1)==1){
result = result * num;
}
num = num * num;
n = n >> 1;
}
System.out.println("num的n次方是:"+result);
}
}