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

总结:

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

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


相关推荐
编程大师哥17 小时前
Java 常见异常(按「运行时 / 编译时」分类)
java·开发语言
SnrtIevg17 小时前
Vavr 用户指南
java·后端
怦怦蓝17 小时前
IDEA 开发邮件发送功能:全流程报错解决方案汇总
java·ide·intellij-idea·发邮件
Cx330❀17 小时前
【优选算法必刷100题】第43题(模拟):数青蛙
c++·算法·leetcode·面试
艾莉丝努力练剑17 小时前
【优选算法必刷100题:专题五】(位运算算法)第033~38题:判断字符是否唯一、丢失的数字、两整数之和、只出现一次的数字 II、消失的两个数字
java·大数据·运维·c++·人工智能·算法·位运算
大猫和小黄17 小时前
Java开发过程中的各种ID生成策略
java·开发语言·id
小罗和阿泽17 小时前
java [多线程基础 二】
java·开发语言·jvm
小罗和阿泽17 小时前
java 【多线程基础 一】线程概念
java·开发语言·jvm
悟空码字17 小时前
SpringBoot整合Zookeeper,实现分布式集群部署
java·zookeeper·springboot·编程技术·后端开发
橘颂TA17 小时前
线程池与线程安全:后端开发的 “性能 + 安全” 双维实践
java·开发语言·安全