码迷,mamicode.com
首页 > 其他好文 > 详细

牛客网习题剑指offer之数值的整数次方

时间:2017-11-06 21:20:06      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:code   turn   class   toolbar   col   lag   log   bar   public   

 

技术分享

 

分析:

要考虑到exponent为0和负数的情况。

如果base是0并且exponent是负数的时候呢?那就发生除0的情况了。

 

AC代码:

public class Solution {

    public double Power(double base, int exponent) {

        if(exponent == 0) return 1;
        if(Math.abs(base) <= 0.000000000000001) return 0;

        boolean reverseFlag = exponent < 0;
        exponent = Math.abs(exponent);
        double result = 1;

        while(exponent-- >0){
            result *= base;
        }
        return reverseFlag ? 1 / result : result;
    }

}

 

 

参考资料:

1. https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?tpId=13&tqId=11165&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

牛客网习题剑指offer之数值的整数次方

标签:code   turn   class   toolbar   col   lag   log   bar   public   

原文地址:http://www.cnblogs.com/cc11001100/p/7794780.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!