javaleetcode278. 第一个错误的版本

Posted 青春无敌美少

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaleetcode278. 第一个错误的版本相关的知识,希望对你有一定的参考价值。

leetcode278. 第一个错误的版本


解题思路:

这个题首先我们要弄清 false 和 true 的含义,当isBadVersio为真时,代表有错误,为假时,代表没有错误。
其次这个题要注意的点是,mid=(l+r),当 l 和 r 都是int,两个值的初始值都超过int限定大小的一半,那么 l+r 就会发生溢出,所以我们写成 mid=l+(r-l)/2。

实现代码:

public class Solution extends VersionControl 
    public int firstBadVersion(int n) 
        int l=1;
        int r=n;
        while(l<=r)
            int mid=l+(r-l)/2;
            if(isBadVersion(mid))
                r=mid-1;
            
            else
                l=mid+1;
            
        
        return l;
    


以上是关于javaleetcode278. 第一个错误的版本的主要内容,如果未能解决你的问题,请参考以下文章

javaleetcode278. 第一个错误的版本

LeetCode 278. 第一个错误的版本(First Bad Version)

leetcode 278. 第一个错误的版本

278第一个错误的版本

[JavaScript 刷题] 二分搜索 - 第一个错误的版本,Leetcode 278

278. 第一个错误的版本