LeetCode 69. x 的平方根(二分查找)
文章目录
- 1. 题目
- 2.解题
- 2.1 二分查找
- 2.2 牛顿迭代
1. 题目
实现 int sqrt(int x) 函数。
计算并返回 x 的平方根,其中 x 是非负整数。
由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。
示例 1:输入: 4
输出: 2
示例 2:输入: 8
输出: 2
说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/sqrtx
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2.解题
2.1 二分查找
- 二分查找
class Solution {public:int mySqrt(int x) {if(x <= 1)return x;double left = 1, right = x/2+1, mid;while(right-left > 0.00001){mid = (left+right)/2;if(mid*mid > x)right = mid;elseleft = mid;}return floor(right);}
};
2.2 牛顿迭代
class Solution {public:int mySqrt(int x) {if(x <= 1)return x;double x0 = x, x1, c = x;while(1){x1 = 0.5*(c/x0 + x0);if(fabs(x0-x1) < 1e-6)break;x0 = x1;}return x0;}
};
LeetCode 69. x 的平方根(二分查找)相关推荐
- LeetCode #69 x的平方根 二分查找
LeetCode #69 x的平方根 题目描述 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍 ...
- LeetCode 69. x 的平方根:二分查找法实现自定义的函数:x 的平方根
LeetCode 69. x 的平方根:二分查找法实现自定义的函数:x 的平方根 题目描述 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型 ...
- 卷进大厂系列之LeetCode刷题笔记:二分查找(简单)
LeetCode刷题笔记:二分查找(简单) 学算法,刷力扣,加油卷,进大厂! 题目描述 涉及算法 题目解答 学算法,刷力扣,加油卷,进大厂! 题目描述 力扣题目链接 给定一个 n 个元素有序的(升序) ...
- 【Leetcode | 顺序刷题 】二分查找目录
二分查找 序号 题号 1 29. 两数相除 50. Pow(x, n) 69. x 的平方根 ...
- LeetCode - 69. x 的平方根
69. x 的平方根 class Solution {private static final Integer MAX_POW = 46340;/*** 牛顿迭代* f(x) = x^2 - n* 切 ...
- LeetCode算法题4:二分查找及扩展应用
文章目录 前言 一.二分查找 二.第一个错误的版本 三.搜索插入位置 总结 前言 Leetcode算法系列:https://leetcode-cn.com/study-plan/algorithms/ ...
- LeetCode 1891. 割绳子(二分查找)
文章目录 1. 题目 2. 解题 1. 题目 给定一个整数数组 ribbons 和一个整数 k,数组每项 ribbons[i] 表示第 i 条绳子的长度. 对于每条绳子,你可以将任意切割成一系列长度为 ...
- LeetCode 911. 在线选举(二分查找)
文章目录 1. 题目 2. 解题 1. 题目 在选举中,第 i 张票是在时间为 times[i] 时投给 persons[i] 的. 现在,我们想要实现下面的查询函数: TopVotedCandida ...
- LeetCode 162. 寻找峰值(二分查找)
1. 题目 峰值元素是指其值大于左右相邻值的元素. 给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引. 数组可能包含多个峰值,在这种情况下,返回任何一 ...
最新文章
- IntelliJ IDEA 2019.3 发布,启动更快,性能更好(新特性解读)
- 混合深度卷积,更少参数下的轻量级网络
- 简明python教程 --C++程序员的视角(二):函数及作用域
- 一位非常要好的朋友,零基础转行 Python!
- 【ZZ】大数据架构师基础:hadoop家族,Cloudera系列产品介绍
- PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilder
- unix与linux的区别_Linux与Unix:有什么区别?
- 随想录(学习英文的好处)
- Oracle 多行变一列的方法
- 马化腾:卓越领导者的五种习惯(作出表率尤为重要)
- C++设计模式10--命令模式(二)(Command)--降低请求发送者与接收者耦合
- 甲方在IT信息化中的项目管理
- linux 脚本里切换用户密码,shell,切换用户,执行指定,脚本
- 大数据相加_大数据相加
- matlab 开4次方根,matlab中计算四次方方程a*x^4+b*x+c=0的实数根.
- C++实现基于博弈树的5x5一子棋人机对战
- NLP(自然语言处理) - Tricks Dataset 集合
- Speedoffice(word)如何设置分栏
- 免费思维导图软件, 简单脑图工具,支持导出图片
- 一文告诉你什么叫边缘计算
热门文章
- FreeRTOS系列第19篇---FreeRTOS信号量
- 怎么用计算机画正弦函数图像,几何画板如何绘制正弦函数图象
- 小android模拟器,小姚Android模拟器工作室版本v6.2.7.0正式版
- Codeforces Round #533 (Div. 2) C.思维dp D. 多源BFS
- BZOJ1876 [SDOI2009]SuperGCD 【高精 + GCD优化】
- 无法解析的外部符号,无法解析的外部命令
- C# 委托 / 跨线程访问UI / 线程间操作无效: 从不是创建控件“Form1”的线程访问它...
- thinkpad s3 安装win8 kali双系统笔记
- 开源代码分析技巧之——打印调用逻辑
- SQL PROCEDURE和 FUNCTION的区别