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

总结:

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

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


相关推荐
hzc09876543218 小时前
Spring Integration + MQTT
java·后端·spring
前路不黑暗@9 小时前
Java项目:Java脚手架项目的公共模块的实现(二)
java·开发语言·spring boot·学习·spring cloud·maven·idea
人道领域9 小时前
Spring核心注解全解析
java·开发语言·spring boot
金牌归来发现妻女流落街头10 小时前
日志级别是摆设吗?
java·spring boot·日志
滴滴答滴答答10 小时前
LeetCode Hot100 之 16 合并两个有序链表
算法·leetcode·链表
MOONICK10 小时前
C#基础入门
java·开发语言
圣保罗的大教堂10 小时前
leetcode 3713. 最长的平衡子串 I 中等
leetcode
程序员小假10 小时前
我们来说一下虚拟内存的概念、作用及实现原理
java·后端
愚者游世11 小时前
力扣解决二进制 | 题型常用知识点梳理
c++·程序人生·算法·leetcode·职场和发展
悠哉清闲11 小时前
Future
java·开发语言·kotlin