其他分享
首页 > 其他分享> > L3:查找

L3:查找

作者:互联网

查找

顺序查找(Linear Search)

代码:

def linear_search(li, val):
    for ind, v in enumerate(li):
        if v == val:
            return ind
    else:
        return None

enumerate()函数

enumerate()函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环当中。

enumerate(sequence, [start=0])

二分查找(Binary Search)

代码:

def binary_search(li, val):
    left = 0
    right = len(li)-1
    while left <= right:
        mid = (left + right) //2
        if li[mid] == val:
            return mid
        elif li[mid] > val:
            right = mid -1
        elif li[mid] < val:
            left = mid + 1
    else:
        return None

标签:val,元素,列表,查找,L3,enumerate,li
来源: https://blog.csdn.net/weixin_42706984/article/details/123204856