Линейный поиск — самый простой: проверяем элементы по очереди, пока не найдём нужный или не закончится массив.
function linearSearch(arr, target) { for (let i = 0; i < arr.length; i++) { if (arr[i] === target) return i; // нашли — вернём индекс } return -1; // не нашли }
Сложность — O(n): в худшем случае (элемент в конце или его нет) проверим все элементы. В среднем — половину.
Плюсы линейного поиска: работает на любом массиве, неважно, отсортирован он или нет; прост и надёжен. Минус: медленный на больших объёмах.
Если искать приходится часто, а данные неотсортированы и доступ нужен по ключу — лучше взять хеш-таблицу (O(1)). Если же данные отсортированы — есть способ гораздо быстрее линейного, о нём дальше.