Python实现线性搜索(linear search)

比如说我有数组data,1000个元素,要从里面找x;线性搜索,就是从头找到尾,速度最慢,但是适用性最广。

items = [1,2,3,4,5,6,7,8,9,10,11,
        12,14,14,15,16,17,18,19,20]

def linerSearch(lst, x):

    i = 0

    count = len(lst)

    lst.append(x)

    while True:

        if lst[i] == x:

            del lst[count]

            return i if i < count else None

        i += 1

print(linerSearch(items, 1))  # 0

print(linerSearch(items, 7))  # 6

print(linerSearch(items, 19)) # 18

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/1234.html

分类: 计算机技术
推荐阅读:
C语言交换两个变量 在C语言中交换两个变量,需要创建一个临时变量来存储其中的一个值;例如交换a,b两个值时,需创建一个临时变量保存a的值,再将b值赋予a,最后将临时变量的值赋予b,完成交换过程;
C程序计算二阶行列式的值 本文将使用C语言编写程序计算二阶行列式的值;程序通过定义一个2*2数组用于存储输入的二阶行列式;再通过前文的公式计算出二阶行列式的值;
SQL简易教程 SQL简易教程提供了SQL的基本用法和高级概念;该教程很适合初学者,专业人士亦可参考。
Go语言获取操作系统类型 在Go语言中,你可以使用runtime包来获取操作系统类型。具体来说,你可以使用runtime.GOOS来获取操作系统类型的字符串表示。
Linux找出目录下所有内容重复的文件(包含子目录) 在Linux系统下,如果你想找出某个目录下(包含子目录)所有内容重复的文件,你可以使用这一条命令实现:
Python int()函数 在Python中,int()函数用于将一个数值或字符串转换为整数。如果提供了一个字符串作为参数,那么int()函数将尝试将该字符串解释为一个整数,并返回对应的整数值。如果字符串无法解释为整数,则会引发ValueError异常。