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;
}
相关推荐
lxh011316 小时前
蜗牛排序题解
javascript·算法
HoneyMoose16 小时前
Markdown 为什么会被更广泛的使用
java
极创信息16 小时前
不同开发语言程序如何做信创适配认证?完整流程与评价指标有哪些
java·c语言·开发语言·python·php·ruby·hibernate
Seven9716 小时前
用300行代码手写SpringBoot核心原理
java
airuike12316 小时前
高性能MEMS IMU:重构无人机飞行控制核心
人工智能·算法·重构·无人机
wregjru17 小时前
【MySQL】5. 数据更新与查询详解
java·数据库·mysql
小辉同志17 小时前
79. 单词搜索
开发语言·c++·leetcode·回溯
娇娇爱吃蕉蕉.17 小时前
类和对象的默认成员函数
c语言·开发语言·c++·算法
五阿哥永琪17 小时前
java8新特性 时间间隔类 Duration和Period
java
.豆鲨包17 小时前
【Android】HttpURLConnection解析
android·java