package 递归;
public class 高效n次幂 {
public static void main(String[] args) {
int a =pom(2,10);
System.out.println(a);
}
private static int pom(int a, int n) {
if (n == 0)
return 1;
int res = a;
int ex = 1;
while (res << 1 < n) {
res = res * res;
ex <<= 1;
}
return res * pom(a, n - ex);
}
}

本文介绍了一种高效的计算整数n次幂的方法。通过使用递归思想与位操作结合的方式,该算法能够显著减少乘法操作次数,提高运算效率。具体实现中,通过不断平方并比较指数的方式减少计算量。

被折叠的 条评论
为什么被折叠?



