leetcode 278 第一个错误的版本 (First Bad Version)
Posted 苛性氢
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 278 第一个错误的版本 (First Bad Version)相关的知识,希望对你有一定的参考价值。
很简单的二分查找。
弱智一开始直接复制mid=(1+n)/2
结果TLE,愣是没发现错误。
以为方法错了。
然后复制别人代码,int溢出。
// Forward declaration of isBadVersion API. bool isBadVersion(int version); class Solution { public: int firstBadVersion(int n) { if(isBadVersion(1)){ return 1; } int bg=1; int mid= (1+n)/2; while(n-bg>1){ if(isBadVersion(mid)){ n=mid; } else{ bg=mid; } mid= bg+(n-bg)/2; } return n; } };
以上是关于leetcode 278 第一个错误的版本 (First Bad Version)的主要内容,如果未能解决你的问题,请参考以下文章