Назад к вопросам
Junior — Middle
69
Можешь перечислить основные алгоритмы поиска элементов в массиве?
Ответ от нейросети
sobes.tech AI
Основные алгоритмы поиска элементов в массиве:
-
Линейный поиск (Linear Search) — перебор элементов массива по порядку до нахождения нужного. Прост в реализации, но медленен для больших массивов.
-
Бинарный поиск (Binary Search) — применяется к отсортированным массивам. Делит массив пополам, сравнивает средний элемент с искомым и продолжает поиск в нужной половине. Работает за O(log n).
-
Интерполяционный поиск (Interpolation Search) — улучшение бинарного для равномерно распределённых данных, оценивает позицию искомого элемента по формуле.
Пример бинарного поиска на Java:
public int binarySearch(int[] arr, int target) {
int left = 0, right = arr.length - 1;
while (left <= right) {
int mid = left + (right - left) / 2;
if (arr[mid] == target) return mid;
else if (arr[mid] < target) left = mid + 1;
else right = mid - 1;
}
return -1; // элемент не найден
}