数值的整数方

一、问题描述

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。

二、算法思路

按照指数Exp的情况进行讨论。

  1. Exp>0
  2. Exp=0
  3. Exp<0

三、算法实现

public class Solution {
    public double Power(double base, int exponent) {
        double result=base;
        if(exponent>0){
            while(exponent>1){
                result=result*base;
                exponent--;
            }
        }
        else if(exponent==0) result=1;
        else{//exp<0
            int exp=~exponent+1;//把负数变成正数
            while(exp>1){
                result=result*base;
                exp--;
            }
            result=1/result;
        }
        return result;
  }
}
内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!