Ricerca lineare in Python
Harshit Jindal
3 gennaio 2023
Python
Python Algorithm

Nota
Se si desidera comprendere in dettaglio la ricerca lineare, fare riferimento all’articolo Algoritmo di ricerca lineare.
Algoritmo di ricerca lineare
Supponiamo di avere un array non ordinato A[]
contenente n
elementi e di voler trovare un elemento - X
.
-
Attraversa tutti gli elementi all’interno dell’array partendo dall’elemento più a sinistra usando un cicli
for
e fai quanto segue:- Se il valore di
A[i]
corrisponde aX
, restituisci l’indicei
. (Se possono esserci più elementi che corrispondono aX
, invece di restituire l’indicei
, stampa tutti gli indici o memorizza tutti gli indici in un array e restituisci quell’array.) - Altrimenti passa all’elemento successivo.
- Se si trova all’ultimo elemento dell’array, esci dal cicli
for
.
- Se il valore di
-
Se nessuno degli elementi corrisponde, restituisce
-1
.
Implementazione di Python per la ricerca lineare
def linearsearch(arr, n, x):
for i in range(0, n):
if arr[i] == x:
return i
return -1
arr = [1, 2, 3, 4, 5]
x = 1
n = len(arr)
position = linearsearch(arr, n, x)
if position == -1:
print("Element not found !!!")
else:
print("Element is present at index", position)
Produzione:
Element is found at index: 1
La complessità temporale dell’algoritmo di cui sopra è O(n)
.
Ti piacciono i nostri tutorial? Iscriviti a DelftStack su YouTube per aiutarci a creare altre guide video di alta qualità. Iscriviti
Autore: Harshit Jindal
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn