50. Pow(x, n)

class Solution {
public:
    double myPow(double x, int n) {
        if(n==0||x==1)//任何数的0次方或者1的任何次方均是1;
        return 1;
        if(x==0||n==1)//0的任何次方或者任何数的1次方均是自己本身;
        return x;
        if (n == INT_MAX)//如果n越界,则返回本身;
        return x;
        if(n==INT_MIN)//如果n达到最小值,则如果x>0则返回0,如果是x<0则返回绝对值
        {
            if(x>0)
            return 0;
            else
            return -x;
        }
       double sum=1;//正常情况下的指数
       if(n>0)
       {
        for(int i=0;i<n;i++)
        sum=sum*x;
       }
       else
       {
           n=-n;
           x=1/x;
           for(int i=0;i<n;i++)
           sum=sum*x;
       }
       return sum;
    }
};

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章