Как найти выборку максимально близких чисел из массива? Задался задачей сделать поиск на сайте. В результатах к каждому найденному материалу должна отображаться небольшая вырезка, в которой упоминание ключевых слов поискового запроса максимальное.
Для этого разбиваю поисковый запрос на массив слов. Определяю их индекс (номера вхождений) в текст материала. И... Дальше не знаю что делать с этими числами. Допустим где начинаются мои ключи в полном тексте материала понятно, а как их грамотно вытащить оттуда? Как найти отрезок где они упоминаются чаще всего? То есть выборку чисел самых близких по значению?
Думал найти банально среднее арифметическое и уже от него искать просто ближайший ключ. Но это как то слабовато.

21 Авг 2019 в 06:12
162 +1
0
Ответы
1

Для поиска выборки наиболее близких чисел из массива можно воспользоваться алгоритмом сортировки массива и последующим определением расстояния между каждым числом и средним значением. Например, можно взять среднее арифметическое всех чисел в массиве и определить расстояние каждого числа от этого среднего значения. Затем отсортировать числа по возрастанию этого расстояния и выбрать, например, первые несколько чисел как наиболее близкие к среднему.

Чтобы определить отрезок, где ключевые слова упоминаются чаще всего, можно также использовать алгоритм подсчета количества упоминаний каждого ключевого слова в тексте и определить участок, где это количество максимально.

Надеюсь, это поможет вам в решении задачи поиска на сайте.

20 Апр 2024 в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир