Maison > Article > développement back-end > Comment écrire un algorithme de recherche linéaire en Python ?
Comment écrire un algorithme de recherche linéaire en Python ?
La recherche linéaire est l'un des algorithmes de recherche les plus simples, également connu sous le nom de recherche séquentielle. Son principe est très simple, c'est-à-dire qu'il parcourt l'ensemble de données à rechercher du début à la fin et compare la cible de recherche avec les éléments de l'ensemble de données un par un.
Ci-dessous, nous expliquerons comment utiliser Python pour écrire un algorithme de recherche linéaire et donnerons des exemples de code spécifiques.
Étapes de mise en œuvre de l'algorithme :
Exemple de code :
def linear_search(arr, target): for i in range(len(arr)): if arr[i] == target: return i return -1 # 测试代码 arr = [1, 2, 3, 4, 5] target = 3 result = linear_search(arr, target) if result != -1: print("目标元素在索引位置:", result) else: print("未找到目标元素")
Le code ci-dessus implémente un algorithme de recherche linéaire simple. Définissez d'abord une fonction linear_search
, qui accepte deux paramètres : l'un est l'ensemble de données à trouver arr
et l'autre est l'élément cible target
. linear_search
函数,它接受两个参数:一个是待查找的数据集合arr
,另一个是目标元素target
。
接下来通过for
循环遍历arr
中的每个元素,并与target
比较。若找到了目标元素,则返回该元素的索引位置。若遍历结束后仍未找到目标元素,则返回-1。
在测试代码部分,我们定义了一个示例数据集合arr
和目标元素target
,然后调用linear_search
arr
à travers la boucle for
et comparez-le avec target
. Si l'élément cible est trouvé, la position d'index de l'élément est renvoyée. Si l'élément cible n'est pas trouvé une fois le parcours terminé, -1 est renvoyé. Dans la section du code de test, nous définissons un exemple de collection de données arr
et l'élément cible target
, puis appelons la fonction linear_search
pour rechercher . Enfin, les informations d'invite correspondantes sont générées en fonction du résultat de retour de la fonction.
Veuillez noter que la complexité temporelle de l'algorithme de recherche linéaire est O(n), où n est la taille de l'ensemble de données à trouver. Les algorithmes de recherche linéaire peuvent être moins efficaces lorsque la collecte de données est volumineuse, car tous les éléments doivent être comparés un par un.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!