LeetCode:Pow(x, n)

来源:互联网 发布:韩国人听歌用什么软件 编辑:程序博客网 时间:2024/06/05 08:54


class Solution {
public:
    double pow(double x, int n) {//分治法
        double result;
        if(n<0)
        {
            x=1/x;
            n=-1*n;
        }
        if(n==0)
            return 1;
        if(n==1)
            return x;
        result=pow(x,n/2);
        return result*result*pow(x,n%2);
        //return pow(x,n/2)*pow(x,n/2)*pow(x,n%2);//采用这个方式会超时,没有充分利用之前的计算结果
    }
};

0 0