实现函数double Power(double base, int exponent),求base的 exponent次方。
不得使用库函数,同时不需要考虑大数问题。
只要输出结果与答案的绝对误差不超过 10−2 即视为正确。
注意:
不会出现底数和指数同为0的情况
当底数为0时,指数一定为正
/**
* @param {number} base
* @param {number} exponent
* @return {number}
*/
var Power = function(base, exponent) {
let res = 1;
if(exponent < 0){
base = 1 / base;
exponent = -exponent;
}
//快速幂
for(let i = 0; i < 32; i ++){
let q = exponent >> i & 1;
if(q == 1) res *= base;
base *= base;
}
return res;
};
复制代码
通过12 个样例
/**
* @param {number} base
* @param {number} exponent
* @return {number}
*/
var Power = function(base, exponent) {
return Math.pow(base, exponent);
}
复制代码
也是12个样例
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END