Нахождение всех точек в определенном радиусе другой точки

Я делаю простую игру и наткнулся на эту проблему. Предположим несколько точек в 2D пространстве. Я хочу, чтобы точки рядом друг с другом каким-то образом взаимодействовали.

Позвольте мне бросить картинку здесь для лучшего понимания проблемы:

Теперьпроблема не в вычислении расстояния, Я знаю, как это сделать.

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

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

Если вы не знаете такого известного алгоритма, все идеи приветствуются.

Ответы на вопрос(5)

Ваш ответ на вопрос