思路

考虑负指数,把负指数变正,最后1/结果
指数可分解,偶数提出来2,指数除2,奇指数,指数减一,结果乘上base

代码

import java.util.*;
public class Solution {
    public double Power(double base, int exponent) {
        if(base==0){
            return 0;
        }
        if(exponent==0){
            return 1;
        }
        double res=1;
        boolean f=false;
        if(exponent<0){
            exponent=-exponent;
            f=true;
        }
        while(exponent>0){
            if(exponent%2==1){
                res*=base;
                exponent-=1;
            }else{
                base=base*base;
                exponent/=2;
            }
        }
        if(f){
            res=1/res;
        }
        return res;
  }
}