Sobes.tech
Junior — Middle
100

Hoe bepaal je de tijdcomplexiteit van de zoekoperatie van een element in een enkelvoudig gekoppelde lijst of een array?

Antwoord van AI

sobes.tech AI

Временная сложность поиска элемента зависит от структуры данных:

  • Односвязный список: поиск элемента требует последовательного обхода с начала списка до нужного элемента, так как прямого доступа по индексу нет. В худшем случае нужно пройти весь список — сложность O(n).

  • Массив (список в Python): доступ к элементу по индексу происходит за константное время O(1), так как элементы расположены в памяти подряд. Но если нужно найти элемент по значению (без знания индекса), придётся перебрать элементы — O(n).

Пример в Python:

# Поиск по значению в списке
lst = [1, 2, 3, 4, 5]
value = 3
for i in lst:
    if i == value:
        print("Найдено")
        break

Здесь сложность O(n), так как в худшем случае придётся проверить все элементы.

В односвязном списке поиск по значению аналогичен — перебор элементов с начала до конца.