学渣的刷题之旅 leetcode刷题 69.x的平方根(暴力法、二分查找)
实现 int sqrt(int x) 函数。
计算并返回 x 的平方根,其中 x 是非负整数。
由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。
示例 1:
输入: 4
输出: 2
输入: 8
输出: 2
说明: 8 的平方根是 2.82842…,
由于返回类型是整数,小数部分将被舍去。
我的c++代码
暴力法
class Solution {public:int mySqrt(int x) {int i=0;while(i*i<x){i++;}if(i*i==x)return i;return i-1;}
};
二分查找
class Solution {public:int mySqrt(int x) {if(x==0||x==1)return x;int left=0,right=x/2;while(left<=right){double mid=(left+right)/2;if(mid*mid==x)return mid;else if(mid*mid>x)right=mid-1;elseleft=mid+1;}return left-1;}
};
- 暴力法直接从0开始循环,找到 ≥x 的为止
- 二分查找需要确认查找范围,由数学定理知当x>2时,其平方根属于(0,x/2)区间,则相应的二分查找的范围就确定了
学渣的刷题之旅 leetcode刷题 69.x的平方根(暴力法、二分查找)相关推荐
- 学渣的刷题之旅 leetcode刷题 1.两数之和
给定一个整数数组nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样的元素 ...
- 学渣的刷题之旅 leetcode刷题 21.合并两个有序列表
将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 输入:1->2->4, 1->3->4 输出:1->1->2-> ...
- 学渣的刷题之旅 leetcode刷题 9. 回文数
判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 输入: 121 输出: true 输入: -121 输出: false 解释: 从左向右读, 为 -12 ...
- 学渣的刷题之旅 leetcode刷题 83.删除排序链表中的重复元素
给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3->3 输出 ...
- 学渣的刷题之旅 leetcode刷题 53.最大子序和(动态规划,贪心法)
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4, ...
- 学渣的刷题之旅 leetcode刷题 70.爬楼梯(动态规划)
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 输入: 2 输出: 2 解释: 有两种方法可以爬 ...
- 学渣的刷题之旅 leetcode刷题 100.相同的树
给定两个二叉树,编写一个函数来检验它们是否相同. 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的. 我的c++代码 /*** Definition for a binary tree ...
- 学渣的刷题之旅 leetcode刷题 88. 合并两个有序数组
给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n ...
- 学渣的刷题之旅 leetcode刷题 67.二进制求和
给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 输入: a = "11", b = "1" 输出: " ...
最新文章
- 2022-2028年中国钢筘行业市场研究及前瞻分析报告
- container到image
- 在Windows Server 2012 R2 Standard 部署 ASP.NET Core程序
- App 运营的指标具体都有哪些?(四)
- 如何使用Dependabot保持环境最新
- # 20180908 2018-2019-2 《密码与安全新技术专题》第9周作业
- Apriori算法-java
- 程序员如何在春节假期避免加班?
- WPF--ContextMenu绑定命令的一个问题
- 【linux】centos7下muduo库的安装
- cookie和session的区别及其原理
- 命令提示符操作及Java的特点
- VS2008下easyMule-VeryCD源代码的编译
- 求陈敏老师所著的《OPNET物联网仿真》中的模型IOT_Simulation.rar,万分感谢!
- flask怎么创建虚拟环境_在Windows OS中创建虚拟环境并在本地运行Flask应用程序
- 【图神经网络】Pytorch图神经网络库——PyG基础操作
- python标准库calendar判断年份是闰年和平年
- torch.randn和torch.rand有什么区别
- Frames : 一个特殊的窗口类型
- Threadx tx_thread_create创建线程