算法日常・每日刷题--<二分查找>3

总结模板

根据前面一题,我们可以得出一个模板

判断条件都是left<rihgt

mid,right,left得更新和实际的情况有关系

在实际使用中只要明白x和t比较的分组逻辑即可

方便记忆 right有-1,那么mid的更新就有+1

题目

69. x 的平方根 - 力扣(LeetCode)69. x 的平方根 - 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。 示例 1:输入:x = 4输出:2示例 2:输入:x = 8输出:2解释:8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。 提示: * 0 <= x <= 231 - 1https://leetcode.cn/problems/sqrtx/description/

根据题目的意思,

找得到x就返回mid的下标值

找不到就找mid应该插入的下标值

通过举例发现

cpp 复制代码
class Solution {
public:
    int mySqrt(int x) {
        int left=0,right=46340;
        while(left<right)
        {
            int mid=left+(right-left+1)/2;
            if(mid*mid<=x)
            left=mid;
            else
            right=mid-1;
        }
        return left;
    }
};
相关推荐
绿算技术2 小时前
Mooncake 与绿算ForinnBase GroundPool如何联手打破推理僵局?
科技·算法·架构
-森屿安年-2 小时前
63. 不同路径 II
c++·算法·动态规划
老余捞鱼2 小时前
线性回归实战:5步验证你的量化因子是否真有效
算法·金融·回归·线性回归·ai量化
想吃火锅10053 小时前
【leetcode】121.买卖股票的最佳时机js/c++
算法·leetcode·职场和发展
码云数智-大飞3 小时前
RAII 与智能指针深度拆解
java·前端·算法
Dick5073 小时前
ROS2 常用命令表
人工智能·学习·算法·机器人
大鱼>3 小时前
地平线BPU部署实战:YOLOv8在J5/X3上的算法适配与性能优化
算法·yolo·性能优化
apcipot_rain4 小时前
计科八股20260616(2)/面经——线性代数对称阵求n次幂、概率论最大似然估计
算法
cici158744 小时前
彩色图像模糊增强(Fuzzy Enhancement)MATLAB 实现
开发语言·算法·matlab