【题目】
示例 1:
输入:n = 5, bad = 4
输出:4
解释:
调用 isBadVersion(3) -> false
调用 isBadVersion(5) -> true
调用 isBadVersion(4) -> true
所以,4 是第一个错误的版本。
示例 2:
输入:n = 1, bad = 1
输出:1
提示:
1 <= bad <= n <= 231 - 1
【代码】
执行用时:36 ms, 在所有 Python3 提交中击败了61.83% 的用户
内存消耗:14.9 MB, 在所有 Python3 提交中击败了27.64% 的用户
通过测试用例:22 / 22
# The isBadVersion API is already defined for you.
# @param version, an integer
# @return an integer
# def isBadVersion(version):
class Solution:
def firstBadVersion(self, n):
"""
:type n: int
:rtype: int
"""
left,right=1,n
while left<right:
mid=left+(right-left)//2
if isBadVersion(mid)==True:
right=mid
else:
left=mid+1
return left
寻找首个错误版本:坏版本查找算法

本文介绍了一种解决在线问题的算法,通过调用isBadVersion API 来判断版本号是否为错误的,目标是找到第一个错误的版本。实例演示了如何在给定范围和调用条件下定位错误版本。

被折叠的 条评论
为什么被折叠?



