每天一道算法题系列三十之数值的整数次方
作者:互联网
每天一道算法题系列:
来源:力扣(LeetCode)
本题链接:https://leetcode-cn.com/problems/shu-zhi-de-zheng-shu-ci-fang-lcof/
来源是力扣,大家喜欢可以去力扣中文网做相应的其他的题,某浏览器直接搜力扣即可。
本题难度是简单
实现函数double Power(double base, int exponent),求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。
示例 1:
输入: 2.00000, 10
输出: 1024.00000
示例 2:
输入: 2.10000, 3
输出: 9.26100
示例 3:
输入: 2.00000, -2
输出: 0.25000
解释: 2-2 = 1/22 = 1/4 = 0.25
/*
这道题相对简单,直接暴力的方式。这里使用的方法是最简单的一个for循环的方式,注意的一点就是这里不能用i--
的形式,因为是n*n是两个数相乘,所以都是两个数两个数这样的减,所以需要i /= 2
这样的形式。然后还需要注意一点是,需要判断是奇数的判断
*/
public double myPow(double x, int n) {
double result = 1.0 ;
for(int i = n ;i != 0 ; i = i/2,x *= x){
//这里判断奇数
if(i % 2 !=0)
result = result * x ;
}
//这里来判断n的正负的返回
return n < 0 ? 1 / result : result ;
}
上一篇文章:每天一道算法题系列二十九之二进制中1的个数
如果本篇内容有问题,请第一时间联系我,我会第一时间修改。
谢谢大家。
标签:shu,示例,int,double,三十,算法,result,次方 来源: https://blog.csdn.net/qq_38091343/article/details/112857847