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

力扣69. x 的平方根

二分查找

  • 思路:
    • 设置 left 指针为 0,right 指针为 x;
    • 如果 mid = (right - left) / 2 + left 的平方小于或等于 x,此时移动 left = mid + 1,并缓存当前 mid 值,可能这个 mid 就是结果,或者 x 的平方根有更大的数;
    • 否则移动 right 到 mid -1,因为 mid^2 > x,x 的平方根比 mid 小;
    • 直到找到 mid 的值;
class Solution {
public:int mySqrt(int x) {int left = 0;int right = x;int result = -1;while (left <= right) {int mid = (right - left) / 2 + left;if ((long long) mid * mid <= x) {result = mid;left = mid + 1;} else {right = mid - 1;}}return result;}
};

http://www.lryc.cn/news/268064.html

相关文章:

  • go语言学习计划。
  • 设计模式之-3种常见的工厂模式简单工厂模式、工厂方法模式和抽象工厂模式,每一种模式的概念、使用场景和优缺点。
  • docker run --help帮助文档
  • 【Qt-Timer】
  • Java多线程技术五——单例模式与多线程-备份
  • Seem环境安装
  • java八股jvm
  • 家校互通小程序实战开发02首页搭建
  • 使用matlab制作声音采样率转换、播放以及显示的界面
  • FPGA-AMBA协议、APB协议、AHB规范、AXI4协议规范概述及它们之间的关系
  • NI VeriStand中的硬件I / O延迟时间
  • YoloV8的目标检测推理
  • c语言中数据结构
  • 【GitHub精选项目】抖音/ TikTok 视频下载:TikTokDownloader 操作指南
  • Java开发框架和中间件面试题(3)
  • React面试题
  • 机器学习-数学学习汇总
  • 17个常用经典数据可视化图表与冷门图表
  • (五)Python 垃圾回收机制
  • 策略模式(组件协作)
  • 每日一题-----逆序字符串
  • js两个对象数组合并。并且去掉里边某个属性相同的对象
  • 创建重试机制
  • [c]统计数字
  • 采用ODP.NET 批量进行数据同步
  • 【vue滚动条插件vuescroll】【vue自定义滚动条】
  • python 1200例——【8】冒泡排序
  • 在PyTorch中设置随机数生成器的种子值
  • 用手机做无人直播怎么做?
  • 【zookeeper经典应用实战】