- Pow(x, n)
实现 pow(x, n) ,即计算 x 的 n 次幂函数(即,xn)。
示例 1:
输入:x = 2.00000, n = 10
输出:1024.00000
示例 2:
输入:x = 2.10000, n = 3
输出:9.26100
示例 3:
输入:x = 2.00000, n = -2
输出:0.25000
解释:2-2 = 1/22 = 1/4 = 0.25
提示:
-100.0 < x < 100.0
-231 <= n <= 231-1
-104 <= xn <= 104
当n为正数时,如果n刚好被二整除, 返回 pow(x,n/2)* pow(x, n/2)
如果 n不能被整除 返回 pow(x,n/2)* pow(x, n/2) *x
如果是负数,先取得x^-n 再把结果做为分母,返回1/分母
/**
* @param {number} x
* @param {number} n
* @return {number}
*/
var myPow = function(x, n) {
let pow = function(x,n) {
if(n==1) return x;
else if(n==0) return 1;
else{
let i = n;
let val = myPow(x, Number.parseInt(n/2));
if(n%2==0) return val*val;
else return val*val*x;
}
}
let type = 1;
if(n<0) {
type = -1;
n = -n;
}
let val = pow(x, n);
if(type==1){
return val;
}else{
return 1/val;
}
};