Angenommen, ich habe ein Objekt in einem 2-dimensionalen Raum und eine Menge von Punkten, die ich für das Objekt benötige. Punkte können jederzeit hinzugefügt, aber nicht entfernt werden.Kürzeste Pfad- und Sortierpunkte in einem 2-dimensionalen Raum
Was mag ich in der Lage sein, den nächsten am nächsten Punkt zu bestimmen, wo mein Objekt ist in O (lg (n)) Zeit, dann gehen Sie zu ihm, dann bestimmen die nächste Nähe, etc ..
Eine einfache Prioritätswarteschlange funktioniert dafür nicht, da das Objekt seine Position ändert, sodass die Warteschlange bei jeder Bewegung neu angeordnet werden muss. Ich stellte mir vor, die Punkte irgendwie in eine BST zu sortieren, aber ich bin mir unsicher, wie ich nach (x, y) sortieren soll oder ob es überhaupt möglich ist.
Das fühlt sich an, als ob ich versuchen könnte zu lösen traveling salesman, ohne es zu merken, wenn ja, ich entschuldige mich haha.
Er möchte ein sich bewegendes Objekt. – Bytemain
@Phpdna Er möchte ein sich bewegendes Objekt. Er kann es bekommen, indem es Unterstützung hat, um effizient zu berechnen, was an jedem Punkt passiert, an dem Sie das Objekt platzieren. – btilly
Ja. Aber es ist bewegend und kostspielig, es in den Baum einzufügen, wenn es geändert wird. Es gibt auch irgendetwas anderes. Das Schwarz-Weiß ist oft das Gleiche. – Bytemain