怎么在python中实现顺序搜索

怎么在python中实现顺序搜索?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

python主要应用领域有哪些

1、云计算,典型应用OpenStack。2、WEB前端开发,众多大型网站均为Python开发。3.人工智能应用,基于大数据分析和深度学习而发展出来的人工智能本质上已经无法离开python。4、系统运维工程项目,自动化运维的标配就是python+Django/flask。5、金融理财分析,量化交易,金融分析。6、大数据分析。

1、分类

无序列表顺序搜索:从列表中的第一个元素开始,按默认顺序逐个查看,知道找到目标元素或查看列表。如果查看列表后仍未找到目标元素,则目标元素不在列表中。

有序列表顺序搜索:假设列表中的元素按顺序排列。如果有目标元素,出现在n个位置的任何位置的可能性还是一样的,所以比较次数和无序列表一样。如果没有目标元素,搜索效率会提高。

2、实例

def UnsequentialSearch(ulist, item):
    """
    这个函数接受列表与目标元素作为参数, 并返回一个表示目标元素是否存在的布尔值。布尔型变量found的初始值为False, 如果找到目标元素,就将它的值改为Tru
    """
    pos = 0
    found = False
    while pos < len(ulist) and not found:
        if ulist[pos] == item:
            found = True
        else:
            pos += 1
    return found
 
def OrderedListSequentialSearch(ulist,item):
    pos = 0
    found = False
    stop = False
    while pos < len(ulist) and not found and not stop:
        if ulist[pos] == item:
            found = True
        else:
            if ulist[pos] > item:
                stop = True
            else:
                pos = pos+1
    return found
 
if __name__ == '__main__':
    # ret = UnsequentialSearch([1, 3, 10, 5, 8], 7)
    # print(ret)
    ret = OrderedListSequentialSearch([1, 3, 5, 7, 10], 6)
    print(ret)

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。