Einzelnen Beitrag anzeigen

Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#7

AW: Suche nach einer passenden Datenstruktur

  Alt 22. Feb 2016, 22:24
Du kannst dir selbst einen Index bauen. Wenn du deine Minimal- und Maximalwerte kennst (oder beim auslesen ermittelst), skalierst du (für den Index) die Werte auf 0..255. Dann kannst du ein 2D-Array 0..255 0..255 nehmen und darin dann Listen mit den Punkten speichern.

Wenn du dann zu gegebenen (Klick?) Koordinaten den nächstgelegenen Punkt suchst, kommen nur noch sehr begrenzte Punktmengen in Frage. Zuerst suchst du in dem Feld des Klicks nach Punkten. Ist da keiner drin, nimmst du die 8 Felder drum herum usw. Du solltest jedoch schauen, dass deine Index-Felder möglichst quadratisch sind, da du nach dem Fund noch alle andere Felder abprüfen musst, die näher dran sein könnten.
Idealerweise würdest du die Feinheit der Indexstruktur noch irgendwie an die Mächtigkeit der Punktmenge anpassen, oder gleich einen Quadtree verwenden.

Geändert von jfheins (22. Feb 2016 um 22:29 Uhr)
  Mit Zitat antworten Zitat