类似于Python的二进制搜索功能,可在排序列表中查找大于特定值的第一个数字

类似于Python的二进制搜索功能,可在排序列表中查找大于特定值的第一个数字,第1张

类似于Python的二进制搜索功能,可在排序列表中查找大于特定值的第一个数字

您是否尝试过该

bisect
模块

def find_ge(a, key):    '''Find smallest item greater-than or equal to key.    Raise ValueError if no such item exists.    If multiple keys are equal, return the leftmost.    '''    i = bisect_left(a, key)    if i == len(a):        raise ValueError('No item found with key at or above: %r' % (key,))    return a[i]find_ge(somenumbers, 262139)

您的代码错误(1)

low > high
是有效的终止情况。(2)你不应该停留在
low == high
,例如,当它会返回一个不正确的索引
num ==3
你的
somenumbers



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5663075.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存