当前位置:网站首页>剑指Offer 16.数值的整数次方 快速幂+ 递归
剑指Offer 16.数值的整数次方 快速幂+ 递归
2022-08-02 03:33:00 【HotRabbit.】
题目
实现 pow(x, n) ,即计算 x 的 n 次幂函数(即,xn)。不得使用库函数,同时不需要考虑大数问题。
示例 1:
输入:x = 2.00000, n = 10
输出:1024.00000
示例 2:
输入:x = 2.10000, n = 3
输出:9.26100
示例 3:
输入:x = 2.00000, n = -2
输出:0.25000
解释:2-2 = 1/22 = 1/4 = 0.25
提示:
-100.0 < x < 100.0
-231 <= n <= 231-1
-104 <= xn <= 104
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/shu-zhi-de-zheng-shu-ci-fang-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
思路
没有思路
题解
快速幂+递归:
class Solution {
public double myPow(double x, int n) {
long N = n;
return N > 0 ? quickMul(x,N) : 1.0 / quickMul(x,-N);
}
public double quickMul(double x,long N){
if (N == 0){
return 1.0;
}
double y = quickMul(x,N/2);
return N % 2 == 0 ? y * y : y * y * x;
}
}
边栏推荐
猜你喜欢
随机推荐
【Connect the heart rate sensor to Arduino to read the heart rate data】
进程(番外):自定义shell命令行解释器
Basic IO (below): soft and hard links and dynamic and static libraries
回溯法 & 分支限界 - 2
Host your own website with Vercel
【plang 1.4.3】定时器的使用
本地数据库 sqlite3 编译和使用
GM8775C规格书,MIPI转LVDS,MIPI转双路LVDS分享
滑动窗口方法
STM32 CAN 介绍以及相关配置
哈希表解题方法
Basic IO (on): file management and descriptors
[Arduino uses a rotary encoder module]
【MQ-3 Alcohol Detector and Arduino Detect Alcohol】
全加器高进位和低进位的理解
云服务器web项目部署详解
408-Binary tree-preorder inorder postorder level traversal
USB2.0一致性测试方法_高速示波器
基础IO(上):文件管理和描述符
C语言教程 - 制作单位转换器