[leetcode] 278. First Bad Version 解题报告
来源:互联网 发布:sql server 编辑:程序博客网 时间:2024/06/10 01:13
题目链接:https://leetcode.com/problems/first-bad-version/
You are a product manager and currently leading a team to develop a new product. Unfortunately, the latest version of your product fails the quality check. Since each version is developed based on the previous version, all the versions after a bad version are also bad.
Suppose you have n
versions [1, 2, ..., n]
and you want to find out the first bad one, which causes all the following ones to be bad.
You are given an API bool isBadVersion(version)
which will return whether version
is bad. Implement a function to find the first bad version. You should minimize the number of calls to the API.
思路:一个简单的二分查找,一直奇怪为啥超时,看了一下discus才发现原来是(left + right)/2会引起整型溢出,需要用mid = left + (right - left)/2;
代码如下:
// Forward declaration of isBadVersion API.bool isBadVersion(int version);class Solution {public: int firstBadVersion(int n) { int left = 1, right = n, mid; while(left <= right) { mid = left + (right - left)/2; if(isBadVersion(mid) == false)//不是坏的版本 left = mid +1; else right = mid-1; } return left; }};
- [leetcode] 278. First Bad Version 解题报告
- [Leetcode] 278. First Bad Version 解题报告
- 278. First Bad Version LeetCode
- LeetCode 278. First Bad Version
- 【LeetCode】278. First Bad Version
- Leetcode 278. First Bad Version
- leetcode 278. First Bad Version
- LeetCode 278. First Bad Version
- LeetCode *** 278. First Bad Version
- [leetcode] 278. First Bad Version
- LeetCode 278. First Bad Version
- leetcode-278. First Bad Version
- LeetCode 278. First Bad Version
- [Leetcode] 278. First Bad Version
- Leetcode 278. First Bad Version
- [leetcode]278. First Bad Version
- LeetCode 278. First Bad Version
- Leetcode 278. First Bad Version
- 错误 175: 具有固定名称“MySql.Data.MySqlClient”的 ADO.NET 提供程序未在计算
- 嵌入式方向如何转行?
- 编写高效的C程序与C代码优化
- WSAWaitForMultipleEvents
- 机器学习算法入门之(四) SVM
- [leetcode] 278. First Bad Version 解题报告
- 保留2位小数
- 《面向算法设计的数据结构(C++语言版)》正式出版
- 解决MYSQL数据库 Table ‘xxx’ is marked as crashed and should be repaired 145错误
- Android应用启动优化:一种DelayLoad的实现和原理
- 测试
- 指针和引用的区别
- 自定计算金额
- 【转】lettuce介绍