✏Leetcode之PHP版题目解析(50. Pow(x, n))
✏描述
实现 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);
}
转载链接:https://leetcode.cn/
leetCode 
![[爱了]](/js/img/d1.gif)
![[尴尬]](/js/img/d16.gif)