• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594
            給出一個先單調(diào)上升后單調(diào)下降的數(shù)組,查詢某個數(shù),若不存在輸出-1
            先三分求極值,再分左右兩段二分查找

             1 #1095
             2 #Runtime: 32 ms (Beats 61.2%)
             3 #Memory: 14.5 MB (Beats 5.8%)
             4 
             5 # """
             6 # This is MountainArray's API interface.
             7 # You should not implement it, or speculate about its implementation
             8 # """
             9 #class MountainArray(object):
            10 #    def get(self, index):
            11 #        """
            12 #        :type index: int
            13 #        :rtype int
            14 #        """
            15 #
            16 #    def length(self):
            17 #        """
            18 #        :rtype int
            19 #        """
            20 
            21 class Solution(object):
            22     def findInMountainArray(self, target, mountain_arr):
            23         """
            24         :type target: integer
            25         :type mountain_arr: MountainArray
            26         :rtype: integer
            27         """
            28         def b_search(l, r, di):
            29             while l < r:
            30                 mid = (l + r) // 2
            31                 if di == 0:
            32                     if mountain_arr.get(mid) < target:
            33                         l = mid + 1
            34                     else:
            35                         r = mid
            36                 else:
            37                     if mountain_arr.get(mid) > target:
            38                         l = mid + 1
            39                     else:
            40                         r = mid
            41             return l
            42 
            43         l, r = 0, mountain_arr.length() - 1
            44         eps = 1e-6
            45         while l < r:
            46             mid = (l + r) // 2
            47             midmid = (mid + r) // 2
            48             if mountain_arr.get(mid) >= mountain_arr.get(midmid):
            49                 r = midmid
            50             else:
            51                 l = mid + 1
            52         idx = b_search(0, l, 0)
            53         if mountain_arr.get(idx) == target:
            54             return idx
            55         idx = b_search(l + 1, mountain_arr.length() - 1, 1)
            56         if mountain_arr.get(idx) == target:
            57             return idx
            58         return -1
            中文字幕久久亚洲一区| 97久久精品人妻人人搡人人玩| 亚洲精品高清久久| 久久国产香蕉一区精品| 欧美精品乱码99久久蜜桃| 无码久久精品国产亚洲Av影片| 97精品国产91久久久久久| 一本久道久久综合狠狠爱| 久久国内免费视频| 99久久99久久精品免费看蜜桃| 久久精品九九亚洲精品天堂| 久久91精品国产91久| 久久精品国产福利国产秒| 久久青青色综合| 国产 亚洲 欧美 另类 久久| 成人午夜精品无码区久久| 国产精品成人无码久久久久久| 久久久久精品国产亚洲AV无码| 99久久精品免费| 久久99国产综合精品女同| 亚洲日本va午夜中文字幕久久 | 久久水蜜桃亚洲av无码精品麻豆| 7国产欧美日韩综合天堂中文久久久久| 欧美伊人久久大香线蕉综合| 国产亚洲精午夜久久久久久| 成人久久精品一区二区三区| 久久久无码精品亚洲日韩按摩| 亚洲精品无码久久久久AV麻豆| 99久久人人爽亚洲精品美女| 国产精品美女久久久久久2018| 久久无码专区国产精品发布| 亚洲精品97久久中文字幕无码| 国产精品青草久久久久福利99| 狠狠狠色丁香婷婷综合久久五月| 亚洲精品乱码久久久久久按摩 | 99精品久久久久久久婷婷| 免费一级做a爰片久久毛片潮| 韩国三级中文字幕hd久久精品| 久久香蕉国产线看观看乱码| 久久se精品一区二区| 国产精品内射久久久久欢欢|