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

day51—二分法—x 的平方根(LeetCode-69)

题目描述

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

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

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

示例 1:

输入:x = 4
输出:2

示例 2:

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

提示:

  • 0 <= x <= 231 - 1

解决方案:

1、排除边界条件:0,数据范围(long)

2、取中间值,比较目标条件,对比状态去更新两个边界

3、返回找到的值即可

函数源码:

class Solution {
public:int mySqrt(int x) {if(x==0)    return 0;long l=0,r=x,mid=0;long tmp=0;while(l<=r){mid=(r-l)/2+l;tmp=mid*mid;if(tmp>x){r=mid-1;}else if(tmp<x){l=mid+1;}else{return mid;}}return min(l,r);}
};
http://www.xdnf.cn/news/2552.html

相关文章:

  • Gin 框架中集成 runtime/debug 打印日志堆栈信息
  • 2025.4.22 JavaScript 常用事件学习笔记
  • 司法大模型构建指南
  • 问题四、如何解决模型轴配置问题
  • 高功率无人机动力方案首选:CKESC ROCK 220A-H CAN 电调工程性能实测
  • 开发一个LabVIEW软件需要多少钱
  • 2025通信会丨以创新技术赋能新型电力系统 锐捷知识大脑推动效率提升
  • rabbitmq常用命令
  • 代码随想录算法训练营Day37
  • Diamond软件的使用--(6)访问FPGA的专用SPI接口
  • 关于百度模型迭代个人见解:技术竞速下的应用价值守恒定律
  • Vue3项目目录结构规范建议
  • 【测控系统】测控仪器技术概述与专业选择
  • 【项目实训个人博客】multi-agent调研(1)
  • XMOS直播声卡——可支持实时音频DSP处理的低延迟音频方案
  • Web前渗透
  • JavaScript基础(七)之web APIs
  • 开源项目实战学习之YOLO11:ultralytics-cfg-datasets-VOC、xView.yaml文件(八)
  • 设计模式--桥接模式详解
  • 【C++贪心 滑动窗口】P7990 [USACO21DEC] Closest Cow Wins S|省选-
  • UE5 在旋转A的基础上执行旋转B
  • 复杂背景下无人机影像小目标检测:MPE-YOLO抗遮挡与抗背景干扰设计
  • 深度学习算法:开启智能时代的钥匙
  • FastAPI中的依赖注入详解与示例
  • 假设检验学习总结
  • SQL优化,关联查询非常慢,前台页面控件卡顿
  • 使用 Playwright 构建高效爬虫:原理、实战与最佳实践
  • 大模型应用实战:深入理解模型上下文协议 MCP
  • Linux-UDP套接字编程
  • 小结: DHCP