题目要求:Pow(x, n)
Implement pow(x, n).
代码如下:
class Solution { public: //采用二分法 //时间复杂度 O(logn),空间复杂度 O(1) double pow(double x, int n) { //要考虑n < 0的情况! if(n < 0) return 1.0 / power(x, -n); else return power(x, n); } double power(double x, int n){ if(n == 0) return 1; double v = power(x, n / 2); //n为奇数时要多乘一个! if(n % 2 == 0) return v * v; else return v * v * x; } };
原文:http://www.cnblogs.com/510602159-Yano/p/4279336.html