标签:attr which symbol blank dir function 试题 -- ali
n = 5: isBadVersion(3) -> false isBadVersion(5) -> true isBadVersion(4) -> true 因此可以确定第四个版本是第一个错误版本。public class Solution { /** * * */ public int findFirstBadVersion(int n) { int left = 1, right = n; // 左右边界 while (left + 1 < right){ int mid = left + (right - left) / 2; // 判断mid是否为正确版本,如果是的话,那么说明错误版本在mid的右边,反之则在左边 if (SVNRepo.isBadVersion(mid)){ right = mid; // 向[left,mid]查找错误版本 } else { left = mid; // 向[mid,right]查找错误版本 } } // 最后判断下left是否是错误版本 if (SVNRepo.isBadVersion(left)){ return left; } return right; }}
[leetcode/lintcode 题解] Facebook面试题:第一个错误的代码版本
标签:attr which symbol blank dir function 试题 -- ali
原文地址:https://www.cnblogs.com/lintcode/p/13724055.html