数值的整数次方

题目描述

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
http://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
 
class Solution {
public:
   double Power(double base, int exponent) {
      int p = abs(exponent);
      if(p==0)
            return 1;
        if(p==1)
             return base;
        double result=1;
          result=Power(base,p>>1);//相当于exponent%2
           result=result*result;
          if(p&1==1)//相当于%2判断是否为奇数
               result*=base;
            if(exponent<0)
                return 1.0/result;
            else
           return result;
    }
};
原文地址:https://www.cnblogs.com/cancangood/p/4924460.html