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;
}
相关推荐
小O的算法实验室1 分钟前
2025年IEEE TITS,基于动态聚类粒子群算法的无人机任务分配与路径规划
算法
小卡不对头3 分钟前
如何评价书木兰软考题库?一个适合小白的软考题库平台
职场和发展
Tairitsu_H6 分钟前
[LC优选算法#5] 分治:快排 | 颜色分类 | 排序数组 | 第K大元素
c++·算法·leetcode·排序算法·快速排序
星辰_mya6 分钟前
openfeign之在回首
java·架构·dubbo·springcloud·openfeign
青山木7 分钟前
Hot 100 --- 滑动窗口最大值
java·数据结构·算法·leetcode·动态规划
青山木9 分钟前
Hot 100 --- 除自身以外数组的乘积
java·数据结构·算法
Frank学习路上12 分钟前
【C++】面试:STL容器与算法
c++·算法·面试
10岁的博客13 分钟前
NOIP2010普及组「接水问题」详解:模拟算法与优先队列解法
开发语言·c++·算法
彼岸星光ぐ>15 分钟前
排序算法对比
数据结构·算法·排序算法
Sam092718 分钟前
Java 转 AI Agent 开发:Java 和 Python 的区别与快速学习指南
java·人工智能·python·ai