数值的整数次方
2017-08-17 17:35
239 查看
题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
编程思路
1,1). 按照幂的定义。循环累乘。
2). 若给定的指数为负数,则返回累乘的倒数。
3). 若给定的指数为零,则返回1。
4). 底数若为零,则返回0。
2.递归:
n为偶数,a^n=a^n/2*a^n/2;
n为奇数,a^n=(a^(n-1)/2)*(a^(n-1/2))*a
程序代码
1.public class Solution { public double Power(double base, int exponent) { if(equal(base,0.0) && exponent < 0) { return 0.0; } int n = Math.abs(exponent); double result = 1.0; while(n > 0) { result *= base; n--; } if(exponent < 0) result = 1/result; return result; } public boolean equal(double num1, double num2) { if ((num1 - num2 > -0.0000001) && (num1 - num2 < 0.0000001)) { return true; } else return false; } }
2.
public class Solution { public double Power(double base, int exponent) { int n = Math.abs(exponent); if(n == 0) return 1; if(n == 1) return base; double result = Power(base,n >> 1); result *= result; if((n & 1) == 1) result *= base; if(exponent<0) result=1/result; return result; } }
相关文章推荐
- 剑指Offer(Java版):数值的整数次方
- 题目1514:数值的整数次方
- 【面试题11】数值的整数次方
- 面试题11-数值的整数次方
- 剑指offer 数值的整数次方
- 数值的整数次方
- 《剑指offer》——数值的整数次方
- 剑指Offer:数值的整数次方
- 数值的整数次方
- 求数值的整数次方。
- 微软等数据结构+算法面试100题(26)--数值的整数次方
- 数值的整数次方
- 数值的整数次方
- 程序员面试题精选100题(44)-数值的整数次方[算法]
- 面试题11 数值的整数次方
- 《剑指offer》牛客网java题解-数值的整数次方
- 数值的整数次方(剑指offer面试题11)
- 面试题11:数值的整数次方
- c++之数值的整数次方
- 剑指offer-数值的整数次方