【算法|二分查找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;
    }
};

最后就通过啦!!!

相关推荐
happymaker06267 分钟前
简单LRU的实现(基于LinkedHashMap)
算法·leetcode·lru
会编程的土豆18 分钟前
【数据结构与算法】空间复杂度从入门到面试:不仅会算,还要会解释
数据结构·c++·算法·面试·职场和发展
普通网友20 分钟前
《算法面试必刷:15 个高频 LeetCode 题(附代码)》
算法·leetcode·面试
_深海凉_22 分钟前
LeetCode热题100-搜索二维矩阵
算法·leetcode·矩阵
张槊哲33 分钟前
C++ 进阶指南:如何丝滑地理解与实践多线程与多进程
开发语言·c++·算法
代码中介商1 小时前
C语言链表完全指南:从单节点到链表管理
c语言·算法·链表
小小de风呀2 小时前
de风——【从零开始学C++】(四):类和对象(下)
开发语言·c++·算法
aqiu1111112 小时前
[特殊字符]【算法日记 14】数论入门神题:最大公约数与最小公倍数的“乘积守恒定律”
算法
保卫大狮兄2 小时前
一文讲清:仓库管理最核心的10个公式
人工智能·算法·仓库管理
翻身的咸鱼ing3 小时前
常用代码知识
算法·深度优先·哈希算法