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

总结:

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

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


相关推荐
Good_Starry5 小时前
Java——反射
java
又是忙碌的一天5 小时前
SpringBoot 创建及登录、拦截器
java·spring boot·后端
fox_mt5 小时前
AI Coding - ClaudeCode使用指南
java·ai编程
毕设源码-郭学长6 小时前
【开题答辩全过程】以 基于SSM的高校运动会管理系统的设计与实现为例,包含答辩的问题和答案
java·eclipse
qq_5470261796 小时前
Maven 使用指南
java·maven
xiaolyuh1236 小时前
Arthas修改类(如加日志)的实现原理
java
栗子叶6 小时前
Java对象创建的过程
java·开发语言·jvm
有一个好名字6 小时前
力扣-从字符串中移除星号
java·算法·leetcode
萧瑟其中~6 小时前
二分算法模版——基础二分查找,左边界查找与右边界查找(Leetcode的二分查找、在排序数组中查找元素的第一个位置和最后一个位置)
数据结构·算法·leetcode