二分查找

"""
search.py 二分查找方法训练
"""

# list_为有序数列,key为要查找的关键值,返回key在数列中的索引号
def search(list_,key):
    # 第一个数index 最后一个数index
    low,high = 0,len(list_) - 1

    # 循环每次去除一半内容
    while low <= high:
        mid = (low + high) // 2
        # 取后半部分
        if list_[mid] < key:
            low = mid + 1
        # 取前半部分
        elif list_[mid] > key:
            high = mid - 1
        else:
            return mid

l = [1,2,3,4,5,6,7,8,9,10]
print("Key index:",search(l,10))
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容