Поиск с двух краёв
Обычный линейный поиск идёт только слева направо, а здесь два указателя движутся навстречу друг другу. Один проверяет элементы с начала списка, другой — с конца. Даны список array и значение search_item. Верни индекс найденного элемента, а если его нет — -1.
Примеры
Ввод
[1, 5, 5, 10], 1Вывод
0Ввод
[1, 5, 5, 10], 5Вывод
1Ввод
[1, 5, 5, 10], 100Вывод
-1Нужно реализовать
def double_linear_search(array: list[int], search_item: int) -> int:
Теги
arraytwo-pointers
Войдите, чтобы видеть историю отправок
ВойтиВойдите, чтобы использовать AI Mentor
ВойтиВидимые тесты
1
Ввод
[1,5,5,10], 1Ожидаемый
02
Ввод
[1,5,5,10], 5Ожидаемый
13
Ввод
[1,5,5,10], 100Ожидаемый
-14
Ввод
[1,5,5,10], 10Ожидаемый
35
Ввод
[1,5,5,10,1,5], 999999Ожидаемый
-16
Ввод
[1,5,5,10], 20Ожидаемый
-1Фокус-радио
На паузе · SomaFM · Fluid