算法日常・每日刷题--<二分查找>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;
    }
};
相关推荐
数模竞赛Paid answer12 小时前
2026年中青杯数学建模A题数学建模论文智能评估系统与多智能体优化方法求解全过程论文及程序
算法·数学建模·中青杯
银-豆豆12 小时前
数据结构与算法-动态规划、回溯与贪心
算法·动态规划
想吃火锅100514 小时前
【leetcode】200. 岛屿数量
算法·leetcode·职场和发展
Nil20815 小时前
leetcode 54螺旋矩阵
算法·leetcode·矩阵
依然鸣15 小时前
PTA团体程序设计天梯赛L1真题讲解L1-077-080
开发语言·c++·算法·深度优先·pat考试·图论
qeen8718 小时前
【数据结构】自平衡二叉搜索树各种旋转算法原理解析及AVL树的C++实现
数据结构·c++·算法
lucas_AI18 小时前
1.2B 小模型赢过 235B 大模型:NaviDC-OCR 把文档解析卷明白了
人工智能·深度学习·算法
冻柠檬飞冰走茶19 小时前
PTA基础编程题目集 7-35有理数均值(C++语言实现)
开发语言·数据结构·c++·算法·均值算法
民乐团扒谱机19 小时前
【微实验】倒谱算法(Cepstrum)深度解析:原理、数学推导与代码实现
人工智能·算法·语音识别
Nil20820 小时前
leetcode 189轮转数组
数据结构·算法·leetcode