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

总结:

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

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


相关推荐
Java练习两年半15 小时前
互联网大厂 Java 求职面试:技术栈与微服务深度解析
java·微服务·面试·技术栈
Seven9715 小时前
类字节码:揭开Java虚拟机运行机制的神秘面纱
java
lang2015092815 小时前
从零开始掌握 Logback:Java 日志框架的“Hello World”实战指南
java·单元测试·logback
lang2015092816 小时前
Logback 过滤器深度指南:从“三值逻辑”到高性能拦截
java·网络·logback
abant216 小时前
leetcode 739 单调栈模板题
算法·leetcode·职场和发展
左左右右左右摇晃16 小时前
Java 对象:创建方式与内存回收机制
java·笔记
JMchen12316 小时前
企业级图表组件库完整实现
android·java·经验分享·笔记·canvas·android-studio
java1234_小锋1 天前
Java高频面试题:Redis的Key和Value的设计原则有哪些?
java·redis·面试
iPadiPhone1 天前
流量洪峰下的数据守护者:InnoDB MVCC 全实现深度解析
java·数据库·mysql·面试
Nuopiane1 天前
关于C#/Unity中单例的探讨
java·jvm·c#