值域二分
0X00 模板题目
- 278. First Bad Version
我们找的这个值能不能把原数组一分为二, 自己就是那个临界值
class Solution:
def firstBadVersion(self, n):
left, right = 1, n
while left < right:
mid = left + (right - left) // 2
if not isBadVersion(mid):
left = mid + 1
else:
right = midreturn right
- 69. Sqrt(x)
class Solution:
def mySqrt(self, x: int) -> int:
left, right = 1, xwhile left <= right:
mid = left + (right - left) // 2
t = mid ** 2
ift == x: return mid
elif t < x: left = mid + 1
else: right = mid - 1return right
0X01 注意事项 暂无
0X02 相关题目
- 278. First Bad Version
- 【值域二分】69. Sqrt(x)
- 287. Find the Duplicate Number
- 644. Maximum Average Subarray II
- 1292. Maximum Side Length of a Square with Sum Less than or Equa(这道题要好做)
推荐阅读
- 1月尾,是2018年的十二分之一,陈先生自我独白
- 终极找 bug 大法 - 二分
- 浅析栈溢出遇到的坑及绕过技巧
- 内网渗透|内网渗透-最实用的信息收集
- 算法|算法-二分查找
- 128
- s2-045漏洞的复现及其修复
- Python|Python 每日一练 二分查找 搜索旋转排序数组 详解
- 20221,平(jia)凡(ban)的一年
- [Golang]力扣Leetcode—初级算法—排序和搜索—第一个错误的版本(二分查找)