day66(1.25)——leetcode面试经典150

69. x 的平方根

69. x的平方根

题目:

题解:

java 复制代码
class Solution {
    public int mySqrt(int x) {
        int t = 0;
        while((long)t*t <= x) {
            t++;
        }
        return t-1;
    }
}

后面我看了题解,发现大家都用了二分法,于是我也用了二分试试了,结果过了

但是我写二分还是不熟练,我只记得板子,条件总是不确定 总是需要试错 二分真的有亿点难

java 复制代码
class Solution {
    public int mySqrt(int x) {
        if(x == 1){
            return 1;
        }
        int l=0,r=x/2;
        while(l<r) {
            int mid=(l+r)/2+1;
            if((long)mid*mid>x) {
                r=mid-1;
            }
            else {
                l=mid;
            }
        }
        return l;
    }
}
相关推荐
青青家的小灰灰3 小时前
深入理解事件循环:异步编程的基石
前端·javascript·面试
程序员清风4 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
UrbanJazzerati9 小时前
Vue3 父子组件通信完全指南
前端·面试
UrbanJazzerati9 小时前
Vue 3 纯小白快速入门指南
前端·面试
NAGNIP21 小时前
轻松搞懂全连接神经网络结构!
人工智能·算法·面试
NAGNIP21 小时前
一文搞懂激活函数!
算法·面试
前端Hardy1 天前
面试官:JS数组的常用方法有哪些?这篇总结让你面试稳了!
javascript·面试
牛奶1 天前
React 底层原理 & 新特性
前端·react.js·面试
牛奶1 天前
ts随笔:面向对象与高级类型
前端·面试·typescript
牛奶1 天前
React 基础理论 & API 使用
前端·react.js·面试