成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

【刷算法】LeetCode.278-第一個(gè)錯(cuò)誤的版本

JerryC / 2046人閱讀

摘要:不幸的是,你的產(chǎn)品的最新版本沒(méi)有通過(guò)質(zhì)量檢測(cè)。由于每個(gè)版本都是基于之前的版本開(kāi)發(fā)的,所以錯(cuò)誤的版本之后的所有版本都是錯(cuò)的。假設(shè)你有個(gè)版本,你想找出導(dǎo)致之后所有版本出錯(cuò)的第一個(gè)錯(cuò)誤的版本。示例給定,并且是第一個(gè)錯(cuò)誤的版本。

題目描述

你是產(chǎn)品經(jīng)理,目前正在帶領(lǐng)一個(gè)團(tuán)隊(duì)開(kāi)發(fā)新的產(chǎn)品。不幸的是,你的產(chǎn)品的最新版本沒(méi)有通過(guò)質(zhì)量檢測(cè)。由于每個(gè)版本都是基于之前的版本開(kāi)發(fā)的,所以錯(cuò)誤的版本之后的所有版本都是錯(cuò)的。

假設(shè)你有 n 個(gè)版本 [1, 2, ..., n],你想找出導(dǎo)致之后所有版本出錯(cuò)的第一個(gè)錯(cuò)誤的版本。

你可以通過(guò)調(diào)用 bool isBadVersion(version) 接口來(lái)判斷版本號(hào) version 是否在單元測(cè)試中出錯(cuò)。實(shí)現(xiàn)一個(gè)函數(shù)來(lái)查找第一個(gè)錯(cuò)誤的版本。你應(yīng)該盡量減少對(duì)調(diào)用 API 的次數(shù)。

示例:

給定 n = 5,并且 version = 4 是第一個(gè)錯(cuò)誤的版本。

調(diào)用 isBadVersion(3) -> false
調(diào)用 isBadVersion(5) -> true
調(diào)用 isBadVersion(4) -> true

所以,4 是第一個(gè)錯(cuò)誤的版本。

代碼實(shí)現(xiàn)
// 二分查找變種
/**
 * Definition for isBadVersion()
 * 
 * @param {integer} version number
 * @return {boolean} whether the version is bad
 * isBadVersion = function(version) {
 *     ...
 * };
 */

/**
 * @param {function} isBadVersion()
 * @return {function}
 */
var solution = function(isBadVersion) {
    /**
     * @param {integer} n Total versions
     * @return {integer} The first bad version
     */
    return function(n) {
      let l = 1, r = n;
      while(l <= r) {
        let mid = l  + Math.floor((r-l)/2);
        if(isBadVersion(mid))
          r = mid-1;
        else 
          l = mid+1;
      }
      
      return l;
    };
};

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/97243.html

相關(guān)文章

  • 《一年半經(jīng)驗(yàn),百度、有贊、阿里面試總結(jié)》·手記

    摘要:在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章一年半經(jīng)驗(yàn),百度有贊阿里面試總結(jié),為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。 在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章-《一年半經(jīng)驗(yàn),百度、有贊、阿里面試總結(jié)》,為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。(估計(jì)只有我這么無(wú)聊了哈哈哈) 有給出的或者有些不完善的答案,也盡力給出/完善了(可能有錯(cuò),大家自行辨別)。有些很困難的題目(例如實(shí)現(xiàn)Promi...

    codeKK 評(píng)論0 收藏0
  • 《一年半經(jīng)驗(yàn),百度、有贊、阿里面試總結(jié)》·手記

    摘要:在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章一年半經(jīng)驗(yàn),百度有贊阿里面試總結(jié),為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。 在掘金上看到了一位大佬發(fā)了一篇很詳細(xì)的面試記錄文章-《一年半經(jīng)驗(yàn),百度、有贊、阿里面試總結(jié)》,為了查漏補(bǔ)缺,抽空就詳細(xì)做了下。(估計(jì)只有我這么無(wú)聊了哈哈哈) 有給出的或者有些不完善的答案,也盡力給出/完善了(可能有錯(cuò),大家自行辨別)。有些很困難的題目(例如實(shí)現(xiàn)Promi...

    NusterCache 評(píng)論0 收藏0
  • LeetCode】貪心算法--買(mǎi)賣(mài)股票最佳時(shí)機(jī) II(122)

    摘要:貪心算法每一步必須滿足一下條件可行的即它必須滿足問(wèn)題的約束。四題目分析貪心算法,總是做出在當(dāng)前看來(lái)是最好的選擇,不從整體最優(yōu)上加以考慮,也就是說(shuō),只關(guān)心當(dāng)前最優(yōu)解,按照貪心策略,不關(guān)心以后,我們只關(guān)心當(dāng)前利益。 一、寫(xiě)在前面 為什么要在LeetCode刷題?大家都知道不管是校招還是社招算法題是必考題,而這一部分恰巧是大多數(shù)人的短板,所以刷題首先是為了提高自身的編程能力,能夠在算法面試中...

    xbynet 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<