Данная статья посвящена разбору одной из простых тем, связанную с поиском элемента в массиве. Мы разберем, как найти элемент в массиве, какие существуют алгоритмы, а также обсудим их асимптотические сложности. Для написания кода будем использовать Python.Итак, представим простую…
На собеседованиях мы слышим или говорим сами, что поиск в массиве медленнее, чем в хеш-таблице. Кто-то даже вспоминает, что поиск в массиве имеет линейную сложность или O(n), а в хеш-таблице — константную O(1). Но работает ли это на практике? Что, если есть ситуации, когда поиск в массиве оказывается быстрее? Давайте не будем торопиться с выводами. Читать далее
Что такое бинарный поиск? Когда нужно выполнить поиск в массиве, простейшим способом может быть использование indexOf() или, возможно, цикла for(). Любой из этих способов будет начинать перебирать массив начиная с начала и переходить по каждому элементу массива до тех пор, пока не будет найдено нужное значение. Теперь сравним это с бинарным поиском. Бинарный поиск позволяет выполнять поиск в отсортированном массиве путем многократного разбиения массива пополам. Читать дальше →
Полнотекстовый поиск vs. Векторный поиск: в чём разница и когда их использовать? Технологии поиска информации сильно продвинулись вперёд. Раньше был доступен только поиск по ключевым словам, но теперь, благодаря машинному обучению, появился векторный поиск, который помогает…