当前位置: 首页 > news >正文

【二分查找】Leetcode x 的平方根

题目解析

69. x 的平方根
在这里插入图片描述
这道题表面是没有顺序性,但是我们可以发现如果使用枚举策略,它是包含顺序性质的,因此我们将枚举算法改进成二分算法


算法讲解

我们让left指针指向1, right指针指向x
在这里插入图片描述
如果当前的mid计算出来的平方 > x,right = mid - 1;
else left = mid;
这里需要注意的一点是,我们这里的mid计算需要使用left + (right - left + 1) / 2
在这里插入图片描述

class Solution {
public:int mySqrt(int x) {//这道题没有直接的顺序性,但是我们可以寻找顺序性if(x == 0)return 0;int left = 1, right = x;while(left < right){long long mid = left + (right - left + 1) / 2;long long num = pow(mid, 2);if(num > x)right = mid - 1;else left = mid;}return left;}
};

相关文章:

  • OpenCV项目实战-深度学习去阴影-图像去阴影
  • Chatgpt掘金之旅—有爱AI商业实战篇|社交媒体管理|(七)
  • unity工程输出的log在哪里?
  • 手动实现Tomcat底层机制+自己设计Servlet
  • 倒三角形的两种输出方法
  • MES实施之工控机和电脑的选择
  • 条件变量的使用(golang)
  • 计算机网络-TCP重传、滑动窗口、流量控制、拥塞控制
  • 解决element-plus table组件 fixed=“right“(left)浮动后横向滚动文字穿透的问题
  • 【北邮国院大三下】Cybersecurity Law 网络安全法 Week1【更新Topic4, 5】_cyber security la
  • 12.自定义的多帧缓存架构
  • 【PostgreSQL】技术传承:使用Docker快速部署PostgreSQL数据库
  • 游戏引擎中的物理系统
  • 深入探讨string类的奥秘
  • 数据库的简单查询
  • gitlab-ci配置详解(一)
  • Git的一些常用操作
  • Java基本数据类型之Number
  • java正则表式的使用
  • scala基础语法(二)
  • Vultr 教程目录
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 搞机器学习要哪些技能
  • 深入 Nginx 之配置篇
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 通过git安装npm私有模块
  • 我有几个粽子,和一个故事
  • 找一份好的前端工作,起点很重要
  • 追踪解析 FutureTask 源码
  • 走向全栈之MongoDB的使用
  • ​​​​​​​​​​​​​​汽车网络信息安全分析方法论
  • # centos7下FFmpeg环境部署记录
  • #Linux(帮助手册)
  • #微信小程序(布局、渲染层基础知识)
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (二)c52学习之旅-简单了解单片机
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (三)c52学习之旅-点亮LED灯
  • (三)mysql_MYSQL(三)
  • (十三)Flask之特殊装饰器详解
  • (一) storm的集群安装与配置
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .equals()到底是什么意思?
  • .Net 高效开发之不可错过的实用工具
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .net连接MySQL的方法
  • .NET设计模式(8):适配器模式(Adapter Pattern)
  • ??eclipse的安装配置问题!??
  • @font-face 用字体画图标
  • @Pointcut 使用