]数值的整数次方
Posted 张乐乐章
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了]数值的整数次方相关的知识,希望对你有一定的参考价值。
题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
思路:
使用递归,时间复杂度O(logn)
- 当n为偶数,a^n =(a^n/2)*(a^n/2)
- 当n为奇数,a^n = a^[(n-1)/2] * a^[(n-1)/2] * a
1 public class Solution { 2 public double Power(double base, int exponent) { 3 if(exponent==1) return base; 4 if(exponent==-1) return 1/base; 5 if(exponent==0) return 1; 6 double res = Power(base, exponent>>1); 7 res = (exponent & 0x1)==1? base *res*res:res*res; 8 return res; 9 } 10 }
以上是关于]数值的整数次方的主要内容,如果未能解决你的问题,请参考以下文章