Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: algorithm

Как ускорить алгоритмическую сложность?

Вопрос проверяет знание оптимизации алгоритмов.

Короткий ответ

Бинарный поиск ускоряет поиск элемента в отсортированном массиве, сокращая время с O(n) до O(log n). Он работает, сравнивая искомое значение со средним элементом и отбрасывая половину массива на каждом шаге.

Длинный ответ

Обычный перебор массива (линейный поиск) имеет сложность O(n), но если массив отсортирован, можно использовать бинарный поиск.

Алгоритм:

  1. Находим середину массива.

  2. Если искомое значение равно среднему элементу — возвращаем его.

  3. Если значение меньше — ищем в левой половине, если больше — в правой.

  4. Повторяем, пока не найдем элемент или не закончится массив.

Пример кода:

function binarySearch(arr, target) {
	let left = 0;
	let right = arr.length - 1;
	while (left <= right) {
		const mid = Math.floor((left + right) / 2);
		 if (arr[mid] === target) return mid;
			 if (arr[mid] < target) left = mid + 1;
			else right = mid - 1;
	}
	return -1; // Элемент не найден
}

Бинарный поиск работает только с отсортированными данными, но гораздо быстрее линейного.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    3

  • Сложность:

    7

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#algorithm

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию