第一個錯誤的版本
你是產品經理,目前正在領導一個團隊開發一個新產品。不幸的是,您的產品的最新版本沒有通過質量檢查。由於每個版本都是基於之前的版本開發的,所以錯誤版本之後的所有版本都是不好的。
假設你有 n 個版本 [1, 2, ..., n],你想找出第一個錯誤的版本,導致下面所有的錯誤。
你可以通過 bool isBadVersion(version) 的介面來判斷版本號 version 是否在單元測試中出錯。實現一個函式來查詢第一個錯誤的版本。您應該儘量減少對 API 的呼叫次數。
題目地址
def firstBadVersion(self, n):
"""
:type n: int
:rtype: int
"""
if n <= 0:
return n
# 這是我犯的錯誤,還是按陣列從0-n-1
# start = 0
# end = n - 1
start = 1
end = n
while start + 1< end:
mid = (start + end) / 2
if isBadVersion(mid):
end = mid
else:
start = mid
if isBadVersion(start):
return start
if isBadVersion(end):
return end
return n
相關文章
- leedcode-第一個錯誤的版本
- LeetCode-278-第一個錯誤的版本LeetCode
- 我的第一個系統管理員錯誤
- TensorFlow不同版本引起的錯誤
- 8種最坑的SQL錯誤用法,第一個就很坑?SQL
- 除錯的第一個Jdon出錯資訊除錯
- 開發者常犯的 9 個錯誤
- EXP客戶端版本差異造成的錯誤客戶端
- mysql 一個錯誤MySql
- TongLINK/Q8.X版本的錯誤號整理
- 5個需要避免的CSS錯誤CSS
- 上一個日誌的錯誤
- IT人士常犯的17個職場錯誤
- 微信支付錯誤兩個問題的解決:curl出錯,錯誤碼:60
- 50個常見的 Java 錯誤及避免方法(第一部分)Java
- OpenJDK JDK 18第一個版本釋出JDK
- 分享一個有意思的錯誤
- python開發者常犯的10個錯誤Python
- macOS小白容易犯的24個錯誤Mac
- PHP開發者常犯的10個MySQL錯誤PHPMySql
- Java 中最常見的 5 個錯誤Java
- 一個ORA-604錯誤的分析
- 22、listener的幾個錯誤程式碼
- 第一個Java卡應用的除錯Java除錯
- nacos2.3.0版本403 user not found錯誤
- Oracle11.1.0.7版本的ASSM與ORA-04030錯誤OracleSSM
- Oracle跨版本匯出EXP-00003錯誤的解決()Oracle
- 做個前端錯誤監控前端
- Code Review 常見的5個錯誤模式View模式
- go新手容易犯的三個致命錯誤Go
- JavaScript中常見的錯誤,你犯了幾個?JavaScript
- Java 開發者最容易犯的10個錯誤Java
- 一個 ExpressionChangedAfterItHasBeenCheckedError 錯誤的解決過程ExpressError
- Golang開發常見的57個錯誤Golang
- 十個PHP開發者最容易犯的錯誤PHP
- 資料庫新手常犯的 5 個錯誤資料庫
- Linux 新手容易犯的 7 個錯誤Linux
- Linux 新手容易犯的 7 個 錯誤Linux