Python实现线性搜索(linear search)

线性搜索(linear search)通过从第一个元素开始遍历,与列表中的每个元素进行比较,直到匹配到元素或全部匹配完毕为止;

当列表过大时,线性搜索并不是一种高效的算法;

使用Python实现如下:

def search(arr, x):
  
    for i in range(len(arr)):
  
        if arr[i] == x: return i
  
    return -1

arr = [ 1 , 2 , 3 , 4 ]
x = 3

result = search(arr,x)
if result!=1 :
    print("元素索引为:",result)
else:
    print("没找到元素!")

输出:

元素索引为: 2

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

本文地址: https://www.perfcode.com/p/linear-search-in-python.html

分类: 计算机技术
推荐阅读:
Rust实现字符串MD5加密 本文将使用Rust语言rust-crypto库实现字符串的MD5加密;
spim:(parser) Label is defined for the second time 解决方法 在使用QtSpim读取汇编语言文件时提示:Label is defined for the second time on line xx of file xxx main:,出现这个错误是因为你没有在载入文件前初始化你的模拟器;
Rust toml::Table详细用法 在Rust中,toml::Table是一个代表TOML表(table)的结构体,可以使用它来访问和操作TOML格式的数据。toml::Table结构体可以看作是一个HashMap,它将TOML表的键和值映射到一个哈希表中。TOML表是TOML格式数据的核心,它表示一组键值对,其中每个键都是一个字符串,对应一个值。
Matlab如何设置默认工作目录? 要设置 MATLAB 的默认工作目录,可以按照以下步骤进行操作:
C语言assert()宏:在代码中插入检查点 在C语言中,assert()函数用于在代码中插入检查点。这个函数接受一个表达式作为参数,如果表达式的值为假,那么程序会先打印错误信息(这些信息中包含程序的名称、源代码的文件名、行号、以及表达式),然后调用abort()函数来停止程序的执行。
使用python求解极限 要使用Python求解一个极限,可以使用Python中的SymPy库;