女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

LeetCode初級算法-排序和搜索01:第一個錯誤的版本

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2020-12-10 22:22 ? 次閱讀

LeetCode初級算法--排序和搜索01:第一個錯誤的版本

一、引子

這是由LeetCode官方推出的的經典面試題目清單~
這個模塊對應的是探索的初級算法~旨在幫助入門算法。我們第一遍刷的是leetcode推薦的題目。

二、題目

你是產品經理,目前正在帶領一個團隊開發新的產品。不幸的是,你的產品的最新版本沒有通過質量檢測。由于每個版本都是基于之前的版本開發的,所以錯誤的版本之后的所有版本都是錯的。

假設你有 n 個版本 [1, 2, ..., n],你想找出導致之后所有版本出錯的第一個錯誤的版本。

你可以通過調用 bool isBadVersion(version) 接口來判斷版本號 version 是否在單元測試中出錯。實現一個函數來查找第一個錯誤的版本。你應該盡量減少對調用 API 的次數。

示例:

給定 n = 5,并且 version = 4 是第一個錯誤的版本。

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

所以,4 是第一個錯誤的版本。 

1、思路

首先我們可以想到的就是把整個列表都順序遍歷一遍,第一次調用接口出現False的下一個為True的就是我們要求的值,但是這個算法會超時。

我們使用二分查找:

我們要尋找第一個錯誤版本,也就是要保留最后一個false之后的第一個true。所以在更新邊界的時候,右邊界就不用減1了,這樣最后當左右相等時一定是第一個true。

2、編程實現

python

# The isBadVersion API is already defined for you.
# @param version, an integer
# @return a bool
# def isBadVersion(version):

class Solution:
    def firstBadVersion(self, n):
        """
        :type n: int
        :rtype: int
        """
        left = 1
        right = n
        while left
本文由博客一文多發平臺 OpenWrite 發布!

審核編輯 黃昊宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 人工智能
    +關注

    關注

    1804

    文章

    48737

    瀏覽量

    246671
  • 機器學習
    +關注

    關注

    66

    文章

    8492

    瀏覽量

    134125
  • 深度學習
    +關注

    關注

    73

    文章

    5555

    瀏覽量

    122499
  • leetcode
    +關注

    關注

    0

    文章

    20

    瀏覽量

    2429
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    HRTIM變頻控制輸出的第一個周期頻率異常的原因?

    在使用STM32G474CBT6的HRTIM_Mater、HRTIM_TIMER_B和HRTIM_TIMER_D輸出同步互補的四路輸出時,關閉4路輸出和三定時器的計數后,再次開啟時第一個周期的頻率
    發表于 04-25 06:17

    HRTIM變頻控制輸出的第一個周期頻率異常的原因?

    在使用STM32G474CBT6的HRTIM_Mater、HRTIM_TIMER_B和HRTIM_TIMER_D輸出同步互補的四路輸出時,關閉4路輸出和三定時器的計數后,再次開啟時第一個周期的頻率
    發表于 04-22 12:08

    ADS1274用DRDY+TDM輸出模式下,讀到的第一個字節是無效的,為什么?

    今天調試中發現問題,1274在用DRDY+TDM輸出模式下,讀到的第一個字節是無效的! 配置是4通道,在DRDY下降沿產生后,等待5us(采樣率25K,即間隔40us)給出SPI的SCLK
    發表于 01-08 08:17

    TimSort:在標準函數庫中廣泛使用的排序算法

    排序算法呢? 本文將帶你走進 TimSort,在標準函數庫中廣泛使用的排序算法。 這個
    的頭像 發表于 01-03 11:42 ?493次閱讀

    藍橋杯的第一個項目,點亮LED

    第一節IO簡介GPIO是通用輸入/輸出端口的簡稱,是STM32可控制的引腳。GPIO的引腳與外部硬件設備連接,可實現與外部通訊、控制外部硬件或者采集外部硬件數據的功能。每個GPIO內部都有這樣的
    的頭像 發表于 01-02 21:02 ?624次閱讀
    藍橋杯的<b class='flag-5'>第一個</b>項目,點亮<b class='flag-5'>一</b><b class='flag-5'>個</b>LED

    ADS1299在DAISY-CHAIN模式下只能配置第一個AD嗎,那后面幾個都是要怎么配置寄存器,都和第一個樣嗎?

    大家: 1ADS1299在DAISY-CHAIN 模式下只能配置第一個AD么,那后面幾個都是要怎么配置寄存器,都和第一個樣么? 2 手冊上寫了有關時鐘配置的問題,ADS1299在
    發表于 12-20 06:47

    DAC8734只能把第一個接收到的數字數據輸出,有哪些原因導致的呢?

    一個發送的數據時序沒問題。但DAC8734只能把第一個接收到的數字數據輸出,我用的是TI公司自己的DAC8734EVM。可能有哪些原因導致的呢?是上電順序的原因嗎?
    發表于 12-19 09:17

    ADS1194標識芯片的第一個只讀寄存器讀取數據數據錯誤,為什么?

    采用ADS1194,MCUSTM32L4系列. 問題描述如下: 1. 標識芯片的第一個只讀寄存器讀取數據數據錯誤 2. 讀取的數據每一個通道多了一個字節,把多出的字節去掉后位正確
    發表于 12-03 06:59

    韓國無晶圓廠初創公司Panmnesia展示第一個支持CXL的AI集群

    在2024?OCP全球峰會上,開發CXL交換機SoC和CXL IP的韓國無晶圓廠初創公司Panmnesia展示了第一個支持CXL的AI集群,該集群采用CXL 3.1交換機。 OCP全球峰會由世界上
    的頭像 發表于 11-28 11:04 ?802次閱讀

    ADS131A04在復位后以READY字進行響應,在第一個幀中接收到的響應不正確,為什么?

    幀,則在第一個幀中接收到的響應不正確,而后續響應是正確的。為什么復位后第一個幀中的 READY 響應不正確?
    發表于 11-25 08:11

    ADS127L01讀取ADC數據時DOUT在DRDY拉低之前或第一個SCLK到來之前就已經開始切換,為什么?

    如下圖,采用SPI模式配置完之后讀取ADC數據時,CS信號持續拉低;在下一個數據幀的第一個SCLK來臨之前DOUT就已經開始切換(此時DRDY還未拉低),請問什么原因可能導致這樣的結果?
    發表于 11-15 08:29

    LMK1C1104第一個cycle在CLKOUT中丟失,為什么?

    LMK1C1104: CLKIN的第一個cycle在CLKOUT中丟失,詳情請參照關聯問題
    發表于 11-11 07:12

    時間復雜度為 O(n^2) 的排序算法

    , O(n2) 的排序算法可能會比 O(nlogn) 的排序算法執行效率高。不過隨著數據規模增大, O(nlogn) 的排序
    的頭像 發表于 10-19 16:31 ?1636次閱讀
    時間復雜度為 O(n^2) 的<b class='flag-5'>排序</b><b class='flag-5'>算法</b>

    SDK 0.9.4在函數中連續調用espconn_sent,只能看到第一個espconn_sent的數據,為什么?

    在 SDK 0.9.3 及更早版本中,如果我在函數中連續調用 espconn_sent,它將發送所有連接的數據。如果我在 0.9.4 中執行相同的操作,我只能看到第一個espconn_sent的數據
    發表于 07-18 08:24

    與屏幕起發送的第一個UART數據時出現初始崩潰,但僅在第一次閃存時出現,為什么?

    =0x00000000, depc=0x0 000000 ets 2013-01-8,第一個原因:2,開機模式:(1,7) ets 2013-01-8,第一個原因:4,開機模式:(
    發表于 07-09 07:39