2020-02-20 吴亲库里 库里的深夜食堂
实现 pow(x, n) ,即计算 x 的 n 次幂函数。。

这道题可以直观的用暴力法来解决,具体的思路就是模拟整个过程,将值x连乘n次.如果n是负数的话我们可以把x用 1/x 代替,然后将n取绝对值.这种方法的时间复杂度是O(n).还有一种更快的方法,叫快速幂算法,它的时间复杂度为O(logn)
/**
* @param Float $x
* @param Integer $n
* @return Float
*/
function myPow($x, $n) {
if(!$n){
return 1;
}
if ($n <= 0) {
return 1/$this->myPow($x, -$n);
}
if ($n %2) {
return $x * $this->myPow($x, $n-1);
}
return $this->myPow($x*$x, $n/2);
}
