题目
https://leetcode-cn.com/problems/first-bad-version/

解题思路
#这个问题和二分查找有一点不同,就是二分查找的数有可能不在数组里边 而这个第一个错误版本,一定在这里边
#二分查找 查找的是一个确定的数,可以使用等于判断,而这个查找的不是一个确定的数,需要使用区间的不断缩小到只有一个数字
#这里的版本号都是有序的,如果不是有序的,需要使用 index
代码
# 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
"""
low, high = 1, n
while low < high:
mid = (low + high)//2
if isBadVersion(mid):
high = mid
else:
low = mid +1
return low

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



