【算法|二分查找No.2】leetcode 69. x 的平方根

个人主页:兜里有颗棉花糖

欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创

收录于专栏【手撕算法系列专栏】【LeetCode

🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望对大家有所帮助

🍓希望我们一起努力、成长,共同进步。

原题链接:点击直接跳转到该题目

目录

1️⃣题目描述

给你一个非负整数 x ,计算并返回 x 的 算术平方根 。

由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。

注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5

示例1:

输入:x = 4

输出:2

示例2:

输入:x = 8

输出:2

解释:8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。

2️⃣代码编写

cpp 复制代码
class Solution {
public:
    int mySqrt(int x) {
        if(x < 1) return 0;
        int l = 1,r = x;
        while(l < r)
        {
            long long mid = l + (r - l + 1) / 2;
            if(mid * mid <= x) l = mid;
            else r = mid - 1;
        }
        return l;
    }
};

最后就通过啦!!!

相关推荐
随意起个昵称4 小时前
线性dp-LIS题目5(导弹拦截,二分优化)
c++·算法·动态规划
winlife_4 小时前
全程用 AI 做一款商业级手游 · EP10 道具系统:让三个按钮真正改变棋盘
windows·算法·unity·ai编程·游戏开发·mcp·玩法系统
计算机安禾4 小时前
【数据库系统原理】第16篇:范式理论(下):多值依赖与第四范式——消除非平凡的非函数依赖
算法
lqqjuly4 小时前
一致性模型深度解析
人工智能·深度学习·算法
RisunJan4 小时前
Linux命令-patch (为开放源代码软件安装补丁程序)
linux·服务器·算法
一条大祥脚5 小时前
ABC460贪心|多源BFS|数论|计数|线段树|树的直径
算法·宽度优先
小欣加油5 小时前
leetcode121买卖股票的最佳时机
数据结构·c++·算法·leetcode·职场和发展
暖阳华笺5 小时前
【高频考点】K-Means聚类算法
c++·算法·机器学习·kmeans·聚类
下午写HelloWorld5 小时前
后量子密码算法:协同签名研究综述
算法·密码学·后量子·协同签名
小蒋学算法5 小时前
算法-计算右侧小于当前元素的个数-分治&归并思想
java·数据结构·算法