278. First Bad Version

Posted optor

tags:

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

原题链接:https://leetcode.com/problems/first-bad-version/description/``
实现如下:

/**
 * Created by clearbug on 2018/4/6.
 */
public class VersionControlSolution extends VersionControl {

    public int firstBadVersion(int n) {
        int start = 1;
        int end = n;
        while (start <= end) {
//            int medium = (start + end) / 2; // 不要使用这种方法,当 start 和 end 都接近 int 类型最大值时会导致溢出,以致 medium 可能成为负数
            int medium = start + (end - start) / 2;
            if (isBadVersion(medium)) {
                end = medium - 1;
            } else {
                start = medium + 1;
            }
        }
        return start;
    }
    
}

以上是关于278. First Bad Version的主要内容,如果未能解决你的问题,请参考以下文章

278. First Bad Version

LC.278. First Bad Version

278. First Bad Version

278. First Bad Version

278. First Bad Version

278. First Bad Version