LeetCode力扣题目:69.x的平方根

Leetcode算法做题记录(一) 题目1:Two Sum 解法1 【算法思路】: ① 使用列表,对列表中的每个元素依次进行遍历; ② 将当前遍历元素之外的元素作为新的列表,判断其中是否有符合条件的输出。 ③ 算法复杂度为O(n) 【代码】: class Solution(object): def twoSum(self, nums, target): """ type nums: List[int] type target: int rtype: List[int] 阅读详情

可以用暴力解决

int mySqrt(int x) {//求x的算数平方根
    long int y = 0;
 	while(y*y<=x)
     {
         y++;
    }
 	return y - 1;
 }

也可以用二分法

int mySqrt(int x) {//求x的算数平方根
	long int y = 0;
	long int left = 0, right = x, mid = left + (right - left) / 2;
	if (x == 1)
		return 1;
	if (x == 0)
		return 0;
	while (left <= right)
	{
		mid = left + (right - left) / 2;
		if (x / mid == mid)
			return mid;
		else if (x / mid > mid)
		{
			left = mid + 1;
		}
		else
			right = mid - 1;
	}
	return right;
}

用二分法解决有一个我觉得很重要的思路就是return right.

我的理解是:

范围再怎么缩小,最终都会到  left==right==mid  的情况

而此时,mid要么比平方根大1,要么小1.

如果x/mid>mid    则说明mid是满足mid*mid<=x 的最大整数,根据我们的循环机制,改变的就是left,最后跳出循环,返回right也满足条件。

如果x/mid<mid    则说明mid是满足mid*mid>x的最小整数,也就是说mid比x的平方根的整数部分大1,根据循环机制,right-1, 跳出循环后返回right 满足条件

SAP农产品增值税进项税解决方案 (三)购进农产品用于生产经营且不构成货物实体的(包括包装物、辅助材料、燃料、低值易耗品等),用于生产适用13%税率货物的扣除率为10%,用于生产适用9%税率货物的扣除率为9%。具体计算公式为: 当期允许抵扣农产品增值税进项税额=当期耗用农产品数量×农产品平均购买单价×扣除率/(1+9%) 阅读详情

相关推荐

电商产品组合策略:引流品与利润品的实战方法论

在电商运营中,产品组合策略是提升流量转化与利润增长的核心技术。其基本原理是通过数据化选品构建产品矩阵,利用引流品吸引用户流量,再通过利润品实现商业变现。这种策略不仅能优化广告投放的ROAS(广告投入产出比),还能显著提升客单价。技术实现上需要结合Google Analytics等工具进行归因分析,并运用动态库存管理模型控制风险。该方案特别适用于Amazon、Shopify等电商平台,能有效解决跨境电商业内流量获取与利润创造的平衡难题。通过实战案例可见,合理的产品组合可使客单价提升30-50%,是电商运营必备

weixin_42522009的博客 350

leetcode题目69:x的平方根【python】

在处理图形和游戏开发中,经常需要计算对象的大小或者距离,这时候求平方根是常见的需求。例如,计算点到原点的距离,确定对象是否在视野内等。不同的平方根计算方法可以根据性能需求和精确度要求选择。例如,位运算法因为其高效性,非常适合嵌入式系统或游戏开发中,牛顿迭代法则适用于需要高精度计算的科学计算软件。由于返回类型是整数,结果只保留整数部分,小数部分将被舍去。

10年数据\经营分析经验,现任大厂数据分析负责人 1065

SRAM故障排查实战:如何用Nano Prober定位6T存储单元的异常点

本文详细介绍了在SRAM故障排查中,如何运用Nano Prober(纳米探针)技术精准定位6T存储单元的内部异常。面对传统方法难以发现的电性参数漂移(如晶体管阈值电压偏移)或微小物理缺陷,Nano Prober能直接对单个6T单元内的晶体管进行I-V特性测量,结合失效模式分析,有效解决读写错误等疑难问题,是芯片失效分析的关键工具。

v5w6x的博客 664

LeetCode 刷题【69. x 的平方根 】

使用二分查找算法计算整数平方根的解法。通过维护左右边界(left和right)及中间值(y),不断调整边界范围

gzkhxohc的博客 266

livox avia平台搭建

livox雷达数据采集平台搭建

Shilong的博客 1308

【RS】哨兵系列数据下载(哨兵2号Sentinel-2波段介绍、下载)

以哨兵二号为示例,分享如何下载欧空局的哨兵系列数据

Remote Sensing迷途小书童 1万+

leetcode69. x 的平方根

69. x 的平方根 实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 示例 1: 输入: 4 输出: 2 示例 2: 输入: 8 输出: 2 说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。 解题思路 暴力 class Solution { public: int mySqrt(int x) { for(int i=1

92377 195

UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position 0-4: ordinal not in range(128)

python3报错处理:UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-4: ordinal not in range(128) 一、报错场景 // 报错代码 Traceback (most recent call last): File "test_autoo3_2.py", line 214, in <module> main() File "test_autoo3_2.py",

浪里小飞侠的博客 4200

【无标题】

nums[mid]<target说明[left,mid]这段区间的值都是⼩于target的,因此舍去左边区间,在右边[mid+1,right]区间继续查找,即让left=mid+1,然后重复2过程;去右边区间,在左边[left,mid-1]的区间继续查找,即让right=mid-1,然后重复2过程;输入: nums = [-1,0,3,5,9,12], target = 9。输入: nums = [-1,0,3,5,9,12], target = 2。采用遍历i的方式,依次判断i*i与x的大小,暴力求解。

2301_80447260的博客 404

手把手教你用CH582的USB0/1双接口玩转CherryUSB协议栈(附完整代码)

本文深入解析CH582双USB接口硬件架构,详细讲解如何通过CherryUSB协议栈实现双接口协同工作,包括中断处理设计、端点资源分配和复合设备描述符配置。提供HID+CDC复合设备实战案例,并分享高级调试技巧与性能优化方法,帮助开发者充分利用CH582的USB0/1双接口潜力。

weixin_42525637的博客 264

全新YOLO26有效涨点改进专栏目录 | 本专栏持续更新500+篇内容 | 包含各种卷积、主干网络、各种注意力机制、检测头、损失函数、小目标检测改进、二次创新模块、独家创新等几百种创新点改进

🔥《2026年YOLO26改进专栏》🔥 🚀持续更新500+最前沿创新改进点(顶会顶刊论文/独家创新策略),涵盖主干网络、各种卷积、注意力机制、检测头等模块,助力科研论文发表与模型性能提升,支持检测/分割/分类任务。订阅即获完整可运行项目,提供专业QQ答疑群,适合科研发论文(SCI/CCF/核心)及工业应用(PCB/医学/遥感检测)。专栏价格将逐步上涨,早订更优惠! ⭐特色:非计算机专业友好、模块可自由组合、全网独家创新;📌适用:研究生大论文和小论文创新、小目标检测、多领域科研应用,满足不同研究需求。

Ai缝合怪、助力小伙伴高效发论文 5098

69. x 的平方根

【代码】69. x 的平方根。

Wzideng@qq.com 340

移动端 AI 部署:ONNX Runtime + Android 从模型到 App

移动端 ONNX 部署的流程是 PC 端导出 ONNX → 放到 Android 项目 assets → ONNX Runtime AAR 加载推理。核心是OrtSession,预处理在 Java 层用 Bitmap 操作完成。建议先在 PC 上用 onnxruntime Python 验证模型正确,再集成到 Android 端,可以减少定位问题的时间。ONNX Runtime 自动调用 NNAPI,在主流芯片上不需要额外适配。

know_F0727的博客 71

69. x 的平方根、Leetcode的Go实现

博客主页:🏆看看是李XX还是李歘歘🏆 🌺每天分享一些包括但不限于计算机基础、算法等相关的知识点🌺 💗点关注不迷路,总有一些📖知识点📖是你想要的💗 ⛽️今天的内容是 Leetcode 83. 删除排序链表中的重复元素 ⛽️💻💻💻 69. x 的平方根 实现int sqrt(int x)函数。 计算并返回x的平方根,其中x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 示例 1: 输入: 4 输出: 2 示例 2:...

分享包括但不限于计算机基础知识、数据结构与算法、Golang技术栈。年与时驰,意与日去,遂成枯落,多不接世,悲守穷庐,将复何及! 455

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

LeetCode题库 69. x 的平方根(简单)

LeetCode题库 69. x 的平方根(简单) 原题 题解 一、使用指数函数exp和对数函数log代替平方根计算 返回值long是防止检验时平方后溢出; class Solution { public int mySqrt(int x) { if (x == 0) { return 0; } int res = (int) Math.exp(0.5 * Math.log(x)); return (long)

qq_34514670的博客 239

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

LeetCode每日一题

69. x 的平方根 实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 链接:https://leetcode-cn.com/problems/sqrtx/. 这道题在leetcode上是一道easy难度的题,因此我们首先可以对其进行暴力求解。暴力求解过程比较简单,遍历1-x,找到平方数大于x的数,最后返回i - 1即可。 //暴力求解 public int mySqrt(int x) {

weixin_44713562的博客 444

LeetCode 69. x 的平方根:两种解法详解

LeetCode 69题"x的平方根"考察基础算法能力,要求不使用内置函数计算非负整数x的算术平方根整数部分。本文分析两种解法:暴力循环法(时间复杂度O(√x))简单易懂但效率低;二分查找法(时间复杂度O(log x))通过缩小查找范围实现高效求解,是面试推荐解法。文章详细讲解两种方法的实现思路、TS代码和优缺点对比,并强调该题在算法学习与面试中的重要性,体现了基础算法思维的培养价值。

2401_86788218的博客 431

69. Sqrt(x)*

69. Sqrt(x)* https://leetcode.com/problems/sqrtx/ 题目描述 Implement int sqrt(int x). Compute and return the square root of x, where x is guaranteed to be a non-negative integer. Since the return type is ...

珍妮的选择的博客 280

算法——二分查找(day10)

老规矩,先用暴力算法思考~

fax_player的博客 681

LeetCode #7(#69、#70、#83)

2020.4.769. Sqrt(x)70. Climbing Stairs83. Remove Duplicates from Sorted List 69. Sqrt(x) Implement int sqrt(int x). Compute and return the square root of x, where x is guaranteed to be a non-negative...

Anchovy的小天地 208

Leetcode题解(23)

69. Sqrt(x) 题目 分析,题目实现求一个int数的平方根,最暴力的算法就是逐个遍历,从1开始到x,判断是否有一个数i,其中满足i*i<=x,并且(i+1)*(i+1)>x;这个算法发虽然简单,但是效率不高。其实,按照暴力算法的思想,我们可以联想到在一个已经排好序的数组中查找一个数,该数正好满足上面的条件,因此可以采用二分查找的思想。代码如下: 1 class ...

weixin_30821731的博客 91

LeetCode 35.搜索插入位置、34.在排序数组中查找元素的第一个和最后一个位置、69.x的平方根、367.有效的完全平方数

本文解析了LeetCode上与二分查找相关的三道题目:35.搜索插入位置、34.在排序数组中查找元素的第一个和最后一个位置、69.x的平方根和367.有效的完全平方数。重点讲解了二分查找在不同场景下的应用,包括处理目标值不存在时返回插入位置(35题)、查找重复元素的边界(34题),以及求平方根和判断完全平方数(69和367题)。文章提供了暴力解法和二分法两种实现思路,强调二分法在有序数组中的高效性(O(logn)时间复杂度),并详细说明了二分查找的两种区间定义方法(左闭右闭和左闭右开)。通过具体代码示例展示

maole7的博客 689

算法与数据结构之手动求平方

一.一道算法题 69. Sqrt(x) 题意: Discuss Pick One Implement int sqrt(int x). Compute and return the square root of x. 本题只用解出最终答案的整数位即可,故除了牛顿迭代法还有其他方法可用 二.牛顿迭代法代码 class Solution { public: int mySqrt(int x) ...

weixin_33885253的博客 121

LeetCode 热题 100 精讲 | 二分查找篇:搜索插入位置 · 搜索旋转排序数组 · 在排序数组中查找首尾位置 · x 的平方根

LeetCode 34. 在排序数组中查找元素的第一个和最后一个位置标准二分(搜索插入位置)、旋转数组中的二分(搜索旋转排序数组)、边界查找(查找首尾位置)、整数平方根(二分逼近)。掌握二分查找的核心在于理解循环不变式和边界条件的处理,特别是当时需要根据题目要求决定是返回还是继续收缩边界。建议刷题顺序:先做搜索插入位置巩固标准二分模板,再做平方根理解二分逼近思想,然后用旋转排序数组挑战复杂条件判断,最后用查找首尾位置掌握边界二分。下一篇将进入贪心算法篇(跳跃游戏、加油站等),敬请期待。免责声明。

2302_81155164的博客 732

Python描述 LeetCode 69. x 的平方根

给你一个非负整数 ,计算并返回 的 算术平方根 。由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。**注意:**不允许使用任何内置指数函数和算符,例如 或者 。示例 1: 示例 2: 提示:...

一起加油 603

力扣简单题系列:x 的平方根(LeetCode 69)

力扣第69题 x的平方根

weixin_53910667的博客 1846

69.力扣LeetCode_x的平方根

本文比较了两种计算整数平方根的方法。牛顿迭代法通过几何切线逼近求解,迭代次数少(3-5次)但涉及浮点运算,存在精度误差;二分法则通过整数范围二分查找,完全基于整数运算,虽然迭代次数多(约30次)但性能更高。分析表明,二分法在整数平方根计算中更具优势:1)纯整数运算避免精度问题;2)硬件执行效率更高;3)完全符合整数输出要求。结论指出,二分法更适合求解最大整数平方根问题,兼具高效性和稳定性。

2401_82472941的博客 1460
上一篇: LeetCode力扣题目:1385.两个数组间的距离值
下一篇: LeetCode力扣刷题:744.寻找比目标字母大的最小字母(二分法重要心得!!!)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值