Finden aller Punkte in einem bestimmten Radius eines anderen Punktes

Ich mache ein einfaches Spiel und bin über dieses Problem gestolpert. Nehmen Sie mehrere Punkte im 2D-Raum an. Ich möchte, dass Punkte in irgendeiner Weise zusammenwirken.

Lass mich hier ein Bild werfen, um das Problem besser zu verstehen:

Jetzt die Problem geht es nicht darum, die Entfernung zu berechnen. Ich weiß, wie das geht.

Anfangs hatte ich ungefähr 10 Punkte und konnte einfach jede Kombination überprüfen, aber wie Sie bereits annehmen können, ist dies mit zunehmender Punktzahl äußerst ineffizient. Was wäre, wenn ich insgesamt eine Million Punkte hätte, aber alle sehr weit voneinander entfernt wären?

Ich versuche, eine geeignete Datenstruktur oder einen Weg zu finden, um dieses Problem zu betrachten, sodass jeder Punkt nur die Umgebung und nicht den gesamten Raum berücksichtigen kann. Gibt es dafür bekannte Algorithmen? Ich weiß nicht genau, wie ich dieses Problem benennen soll, damit ich genau googeln kann, was ich will.

Wenn Sie einen solchen bekannten Algorithmus nicht kennen, sind alle Ideen sehr willkommen.

Antworten auf die Frage(10)

Ihre Antwort auf die Frage