《剑指offer》牛客网java题解-数值的整数次方
来源:互联网 发布:北京市人口普查数据库 编辑:程序博客网 时间:2024/06/08 14:50
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
double类型不能直接用==判断,底数等于0指数小于0时不能将0作为分母。
使用了优化的求幂函数
public class Solution { public double Power(double base, int exponent) { if (equal(base, 0) && exponent < 0) { return 0.0; } int absExponent = Math.abs(exponent); double result = powerWithExponent(base, absExponent); if (exponent < 0) { result = 1.0 / result; } return result; } public double powerWithExponent(double base, int absExponent) { if ( absExponent == 0 ) return 1; if ( absExponent == 1 ) return base; double result = powerWithExponent(base, absExponent >>1); result *= result; if ( (absExponent&1) == 1 ) result *= base; return result; } public boolean equal(double num1, double num2) { if ((num1 - num2 > -0.0000001) && (num1 - num2 < 0.0000001)) { return true; } else return false; }}
阅读全文
0 0
- 《剑指offer》牛客网java题解-数值的整数次方
- 剑指offer题解 数值的整数次方
- 【剑指offer】数值的整数次方-Java
- 牛客网 剑指offer-数值的整数次方
- 【剑指offer-Java版】11数值的整数次方
- 剑指offer:数值的整数次方(java)
- JAVA实现数值的整数次方(《剑指offer》)
- 剑指Offer之数值的整数次方
- 剑指offer:数值的整数次方
- 【剑指offer】数值的整数次方
- [剑指offer]Q11:数值的整数次方
- 【剑指offer】数值的整数次方
- 剑指Offer之数值的整数次方
- 《剑指offer》数值的整数次方
- 剑指offer--数值的整数次方
- 剑指Offer之 - 数值的整数次方
- 剑指offer-11 数值的整数次方
- 剑指offer 11 - 数值的整数次方
- linux && boot
- hdu 4772Zhuge Liang's Password(水题)
- CSS3动画理解与应用
- 应用程序的8个关键性能指标以及测量方法
- Ext JS 6:将日期下拉字段修改为日期时间下拉字段(三)
- 《剑指offer》牛客网java题解-数值的整数次方
- <线段树系列1> codevs 1080 线段树练习
- 百度之星初赛B——Chess
- MyBatis 示例之存储过程(二)
- matlab求各点间距离
- CSS3 Transform变形理解与应用
- 基于Python的卷积神经网络和特征提取(Theano)
- 2017"百度之星"程序设计大赛
- LocalDateTime计算时间差