Implement pow(x, n).
class Solution 
{
public:
    double pow(double x, int n) 
    {
        if(x == 1)
            return 1;
        if(x == -1)
        {
            if(n%2 == 0)
                return 1;
            return -1;
        }
        if(n<0)
            return 1/pow(x,-n);
        double res=1;
        double count = x;
        while(n>0)
        {
            int flag = n&1;
            if(flag == 1)
                res = res*x;
            x = x*x;
            n >>=1;
        }
        return res;
    }
};原文地址:http://blog.csdn.net/shaya118/article/details/42640157