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

总结:

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

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


相关推荐
猿饵块4 分钟前
cmake--get_filename_component
java·前端·c++
编程小白煎堆6 分钟前
C语言:枚举类型
java·开发语言
王哈哈嘻嘻噜噜12 分钟前
c语言中“函数指针”
java·c语言·数据结构
qq_3391911421 分钟前
spring boot admin集成,springboot2.x集成监控
java·前端·spring boot
苹果酱056736 分钟前
通过springcloud gateway优雅的进行springcloud oauth2认证和权限控制
java·开发语言·spring boot·后端·中间件
Sunny_yiyi39 分钟前
Gateway--服务网关
java·开发语言·gateway
子非鱼9211 小时前
【JavaScript】LeetCode:41-45
开发语言·javascript·leetcode·链表·二叉树
Mike!1 小时前
C++进阶 set和map讲解
java·开发语言·数据结构·c++·set·map·cpp
翔云1234561 小时前
Go语言的垃圾回收(GC)机制的迭代和优化历史
java·jvm·golang·gc
不见长安见晨雾1 小时前
将Java程序打包成EXE程序
java·开发语言