50. Pow(x, n)

2023-12-28 02:45:10

实现?pow(x,?n)?,即计算?x?的整数?n?次幂函数(即,xn?)。

示例 1:

输入:x = 2.00000, n = 10
输出:1024.00000

示例 2:

输入:x = 2.10000, n = 3
输出:9.26100

示例 3:

输入:x = 2.00000, n = -2
输出:0.25000
解释:2-2 = 1/22 = 1/4 = 0.25
class Solution {
public:
    double Power_builer(double x,long long n)
    {
        if(n==0)
            return 1;
        auto val=Power_builer(x,n/2);
        if(n%2==0)
        {
            return val*val;
        }
        else
        {
            return val*val*x;
        }
    }

    double myPow(double x, int n) {
        if(x==1)
            return 1;
        if(n==0)
            return 1;
        long long m=n;    
        bool sig=false;
        if(n<0)
        {
            sig =true;
            m=-1*m;
        }
        auto val=Power_builer(x,m);
        if(sig)
            return 1/val;
        else
            return val;
    }
};

文章来源:https://blog.csdn.net/Doubao93/article/details/135252421
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。