LCR 134. Pow(x, n)

解题思路:

分治 快速幂

Java中向下取整n/=2即可

需要结合下图理解,算法就是实现的该过程

java 复制代码
class Solution {
    public double myPow(double x, int n) {
        if(x == 0.0f) return 0.0d;
        long b = n;
        double res = 1.0;
        //例如:2^-5=(1/2)^5
        if(b < 0) {
            x = 1 / x;
            b = -b;
        }
        //分奇偶讨论,为奇数时要多乘一次x
        while(b > 0) {
            //&与运算,例如:5&1=(101&001)=001=1
            if((b & 1) == 1) res *= x;
            //x=x^2
            x *= x;
            //指数地板除2(b/=2也可以)
            b >>= 1;
        }
        return res;
    }
}
相关推荐
im_AMBER13 小时前
Leetcode 105 K 个一组翻转链表
数据结构·学习·算法·leetcode·链表
sin_hielo13 小时前
leetcode 1877
数据结构·算法·leetcode
睡不醒的kun13 小时前
定长滑动窗口-基础篇(2)
数据结构·c++·算法·leetcode·职场和发展·滑动窗口·定长滑动窗口
庄小焱13 小时前
【机器学习】——房屋销售价格预测实战
人工智能·算法·机器学习·预测模型
黎雁·泠崖13 小时前
Java字符串高阶:底层原理深剖+经典面试题全解
java·开发语言
txzrxz14 小时前
单调栈详解(含题目)
数据结构·c++·算法·前缀和·单调栈
重生之我是Java开发战士14 小时前
【Java SE】反射、枚举与Lambda表达式
java·开发语言
weixin_4365250714 小时前
若依多租户版 - @ApiEncrypt, api接口加密
java·开发语言
Hello.Reader14 小时前
Flink Java 版本兼容性与 JDK 模块化(Jigsaw)踩坑11 / 17 / 21 怎么选、怎么配、怎么稳
java·大数据·flink
AI科技星14 小时前
张祥前统一场论的数学表述与概念梳理:从几何公设到统一场方程
人工智能·线性代数·算法·机器学习·矩阵·数据挖掘