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

总结:

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

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


相关推荐
黎雁·泠崖1 分钟前
吃透Java操作符入门:分类差异+进制转换+原反补码 核心前置知识(Java&C对比)
java·c语言·开发语言
天天摸鱼的java工程师1 分钟前
volatile 关键字底层原理:为什么它不能保证原子性?
java·后端
钟良堂1 分钟前
Java完整实现 MinIO 对象存储搭建+封装全套公共方法+断点上传功能
java·minio·断点上传
名字不好奇5 分钟前
C++虚函数表失效???
java·开发语言·c++
u0104058368 分钟前
Java中的服务监控:Prometheus与Grafana的集成
java·grafana·prometheus
行稳方能走远9 分钟前
Android java 学习笔记2
android·java
yaoxin52112312 分钟前
286. Java Stream API - 使用Stream.iterate(...)创建流
java·开发语言
qq_124987075314 分钟前
基于springboot的鸣珮乐器销售网站的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·spring·毕业设计·计算机毕业设计
海南java第二人15 分钟前
SpringBoot核心注解@SpringBootApplication深度解析:启动类的秘密
java·spring boot·后端