Недавно я наткнулся на один интересный вопрос в связанном списке. Дан отсортированный односвязный список, и мы должны искать один элемент из этого списка.
Временная сложность не должна превышать O (log n)
. Похоже, нам нужно применить бинарный поиск к этому связанному списку. Как? Поскольку связанный список не обеспечивает произвольный доступ, если мы попытаемся применить алгоритм двоичного поиска, он достигнет O (n), поскольку нам нужно найти длину списка и перейти к середине.
Есть идеи?