Линейный поиск
Перебор элементов по очереди до совпадения.
Сигнатура
O(n)Линейный поиск проверяет элементы один за другим, пока не найдёт нужный или не дойдёт до конца. Не требует сортировки и работает на любой последовательности.
Сложность: время O(n) в худшем и среднем случае, O(1) в лучшем. Память: O(1). Простейший вариант поиска; уступает бинарному на отсортированных данных.
def linear_search(a, target):
for i, x in enumerate(a):
if x == target:
return i # индекс найденного
return -1 # не найдено
print(linear_search([4, 2, 7, 1], 7)) # 2