Hallo,
für die Implementierung einer Lösung für das Sichtbarkeitsproblem brauche ich eine Datenstruktur, die eine sortiere Liste mit Double-Schlüsseln speichern kann, für das Einfügen und Löschen einen Aufwand von log n besitzt und zusätzlich noch folgende Bedingung besitzt:
Es muss mit konstanten Aufwand möglich sein, die beiden Nachbarn - also Vor- und Nachfolger bezüglich der Sortierung - eines Blattes ermitteln zu können.
Dies soll mit einem Baum möglich sein, bei dem die Blätter durch eine Liste verkettet sind.
Im Moment kann ich mir nicht vorstellen, wie man so eine Struktur erstellen soll? Natürlich könnte ich das TreeMap von Java benutzen (Rot-Schwarz Baum), aber dort kann ich mir nicht vorstellen, wie ich die Einträge noch ohne einen Aufwand größer log n sortiert mit einer Liste verketten soll.
Hat jemand von euch einen Tipp für mich?
für die Implementierung einer Lösung für das Sichtbarkeitsproblem brauche ich eine Datenstruktur, die eine sortiere Liste mit Double-Schlüsseln speichern kann, für das Einfügen und Löschen einen Aufwand von log n besitzt und zusätzlich noch folgende Bedingung besitzt:
Es muss mit konstanten Aufwand möglich sein, die beiden Nachbarn - also Vor- und Nachfolger bezüglich der Sortierung - eines Blattes ermitteln zu können.
Dies soll mit einem Baum möglich sein, bei dem die Blätter durch eine Liste verkettet sind.
Im Moment kann ich mir nicht vorstellen, wie man so eine Struktur erstellen soll? Natürlich könnte ich das TreeMap von Java benutzen (Rot-Schwarz Baum), aber dort kann ich mir nicht vorstellen, wie ich die Einträge noch ohne einen Aufwand größer log n sortiert mit einer Liste verketten soll.
Hat jemand von euch einen Tipp für mich?