V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Alpacino
V2EX  ›  问与答

binary search 的几种写法 到底如何才能运用自如?

  •  
  •   Alpacino · 2019-07-05 00:32:51 +08:00 · 581 次点击
    这是一个创建于 1770 天前的主题,其中的信息可能已经有所发展或是发生改变。
    左闭右开有几种写法?如果存在重复值,哪些写法是求上界的,为什么能求上界?哪些是求下界的,为什么能求下届?
    闭区间有几种写法?同上
    网上找了很多,没有能说的很清楚的。

    闭区间和左闭右开:
    一个数列分割方法:
    [l,mid-1]mid[mid+1,r] while l <= r
    [l,mid)mid[mid+1,r) while l < r
    这两种分别有什么应用场景?有什么不一样的地方?

    LEETCODE 相关题目:
    33 Search in Rotated Sorted Array
    81 Search in Rotated Sorted Array II
    153 Find Minimum in Rotated Sorted Array
    154 Find Minimum in Rotated Sorted Array II

    这些题目中,到底怎么决定是拿 nums[mid]和左边 nums[left]的值比,还是和右边 nums[right]的值比?

    154 的讨论区中,大家都是拿 nums[mid]和 nums[right]比较。是为什么?我尝试用 nums[mid]和 nums[left]比较没有办法处理已经 sorted 的 array。

    再请问因为 mid 是向下取整的,所以和左边比较的时候,必须 nums[low] <= nums[mid]?
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   6075 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 03:04 · PVG 11:04 · LAX 20:04 · JFK 23:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.