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;
    }
}
相关推荐
故以往之不谏1 分钟前
JAVA--类和对象4.1--构造方法基础
java·开发语言·javascript
青瓷程序设计2 分钟前
【基于 YOLO的咖啡豆果实成熟度检测系统】+ Python+算法模型+目标检测+2026原创
python·算法·yolo
014-code2 分钟前
Java Optional 那些被忽略的用法
java·数据库·javase
程序员Shawn3 分钟前
【机器学习 | 第七篇】- 聚类算法
算法·机器学习·聚类
A 小码农4 分钟前
亲测AI智能小助手-IDEA中使用腾讯混元大模型
java·人工智能·intellij-idea
eggwyw5 分钟前
redis 使用
java
ERBU DISH7 分钟前
ChatGLM2-6B模型推理流程和模型架构详解
java
地平线开发者9 分钟前
征程 6X watchdog 问题分析
算法·自动驾驶
像素猎人11 分钟前
蓝桥杯OJ716【限定第一步和最后一步爬台阶的经典例题】【动态规划】
c++·算法·动态规划
BullSmall11 分钟前
IntelliJ IDEA 安装与环境配置指南(2026 最新)
java·ide·intellij-idea