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;
    }
}
复制代码

总结:

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

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


相关推荐
人道领域5 分钟前
【零基础学java】(补充可变参数和Collections)
java·intellij-idea
夏幻灵10 分钟前
【Java进阶】面向对象编程第一站:深入理解类、对象与封装前言
java·开发语言
nsjqj10 分钟前
JavaEE初阶:多线程(1)
java·开发语言·jvm
0xwang11 分钟前
maven scope引起的程序崩溃
java·maven
iAkuya25 分钟前
(leetcode)力扣100 31K个一组翻转链表(模拟)
算法·leetcode·链表
编程饭碗30 分钟前
【Java 类的完整组成】
java·开发语言·python
Macbethad1 小时前
技术方案:基于 TwinCAT 3 的半导体设备气路控制系统设计
java·运维·数据库
C雨后彩虹1 小时前
猜密码问题
java·数据结构·算法·华为·面试
fanruitian2 小时前
visualstudio code cline使用mcp amap
java·前端·visual studio
骇客野人2 小时前
基于springboot的Java快速定时任务
java·windows·spring boot