LeetCode【69. x 的平方根】

给你一个非负整数 x ,计算并返回 x算术平方根

由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。

注意: 不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5

示例 1:

复制代码
输入:x = 4
输出:2

示例 2:

复制代码
输入:x = 8
输出:2
解释:8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。

提示:

  • 0 <= x <= 231 - 1
java 复制代码
public int mySqrt(int x) {
    if (x == 0) {
        return 0;
    }
    
    int left = 1;
    int right = x;
    int result = 0;
    
    while (left <= right) {
        int mid = left + (right - left) / 2;
        if (mid <= x / mid) {
            left = mid + 1;
            result = mid;
        } else {
            right = mid - 1;
        }
    }
    
    return result;
}
相关推荐
Grey Zeng19 小时前
Java SE 25新增特性
java·jdk·jdk新特性·jdk25
雨白20 小时前
Java 线程通信基础:interrupt、wait 和 notifyAll 详解
android·java
架构师沉默1 天前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
Java中文社群1 天前
重要:Java25正式发布(长期支持版)!
java·后端·面试
每天进步一点_JL1 天前
JVM 类加载:双亲委派机制
java·后端
NAGNIP1 天前
大模型框架性能优化策略:延迟、吞吐量与成本权衡
算法
用户298698530141 天前
Java HTML 转 Word 完整指南
java·后端
渣哥1 天前
原来公平锁和非公平锁差别这么大
java
渣哥1 天前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K1 天前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端