LCR 072. x 的平方根

​​题目来源:

leetcode题目,网址:LCR 072. x 的平方根 - 力扣(LeetCode)

解题思路:

二分查找即可。

解题代码:

复制代码
class Solution {
    public int mySqrt(int x) {
        long left=0;
        long right=x;
        while(left<=right){
            long mid=left+(right-left)/2;
            if(mid*mid<=x){
                if((mid+1)*(mid+1)>x){
                    return (int)mid;
                }else{
                    left=mid+1;
                }
            }else{
                right=mid-1;
            }
        }
        return -1;
    }
}
复制代码

总结:

注意计算乘积时可能会溢出。

官方题解给出了三种解法。第一种是通过数学方法讲平方根转化为对数与指数计算。第二种是二分查找。第三种是牛顿迭代法。


相关推荐
程序员木圭几秒前
05-告别逻辑混乱!Java 流程控制让代码学会"判断和循环"
java·后端
yaaakaaang5 分钟前
三、抽象工厂模式
java·抽象工厂模式
kongba0075 分钟前
复刻 Claude Code 项目御马术缰绳系统 harness engineering 落地蓝图
java·linux·服务器
tERS ERTS7 分钟前
Spring Cloud gateway 路由规则
java
ZUNr17 分钟前
手写一个迷你版 @Column:注解到底是怎么工作的?
java
Treh UNFO12 分钟前
MySQL中的通配符
java
AI茶水间管理员13 分钟前
线程池核心线程数设为 0 会怎样?(附源码解析)
java·后端·面试
白开水都有人用14 分钟前
点击数据行选中复选框-抽离公共方法
java·前端·html
NE_STOP17 分钟前
SpringCloud进阶--Redis与分布式
java
MiNG MENS19 分钟前
Spring Boot 实战篇(四):实现用户登录与注册功能
java·spring boot·后端