Итак, моя проблема:
Сортированный массив целых чисел был повернут неизвестное число раз.
При наличии такого массива найдите индекс элемента в массиве быстрее, чемлинейное времяЕсли элемент не существует в массиве, вернуть ноль.
Например, учитывая массив [13, 18, 25, 2, 8, 10] и элемент 8, вернуть 4 (индекс8 в массиве).
Можно предположить, что все целые числа в массиве уникальны.
Код, который я уже пробовал:
def find_index(x, a):
x = input("Enter number wish to be found: ")
a = [13, 18, 25, 2, 8, 10]
for element in a:
if x not in a:
return None
else:
print(a.index(x))
print(find_index())
РЕДАКТИРОВАТЬ: Iперепутал ошибку с другим.Настоящая ошибка: find_index() missing 2 required positional arguments: 'x' and 'a'
Я ожидал, что смогу заставить пользователя ввести число и получить обратно значение позиции индекса или None
.Я ударил кирпичную стену и не уверен, где продолжить.Есть идеи?