leetcode 278. 第一个错误的版本(Java版)

时间:2025-04-19 07:34:11
/* The isBadVersion API is defined in the parent class VersionControl. boolean isBadVersion(int version); */ public class Solution extends VersionControl { public int firstBadVersion(int n) { return (int) find(1, n); } public long find(long left, long right) { if (left == right) return left; long mid = left + (right - left) / 2; if (isBadVersion((int) mid)) { return find(left, mid); } else { //因为目的是找到false,所以让true的mid+1,而非让false的mid-1 return find(mid + 1, right); } } }