28.10.2014 Aufrufe

Umwege in Polygonen - Universität Bonn

Umwege in Polygonen - Universität Bonn

Umwege in Polygonen - Universität Bonn

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Es bleibt der E<strong>in</strong>fluss der <strong>in</strong>neren Schleife <strong>in</strong> Schritt 2c zu prüfen. Nach Lemma 7.4 und<br />

Lemma 7.2 benötigen die beiden <strong>in</strong>neren Schritte jeweils e<strong>in</strong>e Laufzeit von O(k), wobei k<br />

die Anzahl der beteiligten Trichterrandkanten ist.<br />

Da nun jede Trichterrandkante Teil e<strong>in</strong>es kürzesten Weges zu p ist, ist sie auch e<strong>in</strong>e<br />

Kante des Shortest Path Tree. Innerhalb der Schleife <strong>in</strong> 2c werden also zu jedem Eckpunkt<br />

p höchstens n − 1 Kanten betrachtet. Weil wir weiterh<strong>in</strong> zeigen werden, dass jede Kante des<br />

Shortest Path Tree zu höchstens zwei Trichtern gehören kann, wird jede dieser n − 1 Kanten<br />

zu e<strong>in</strong>em Punkt p <strong>in</strong>nerhalb der <strong>in</strong>neren Schleife also höchstens zweimal betrachtet. Damit<br />

ist gezeigt, dass Schritt 2c pro Eckpunkt nur zu e<strong>in</strong>er Laufzeit von O(n) führt. Insgesamt<br />

verursacht der Schritt für den Algorithmus also höchstens e<strong>in</strong>e Laufzeit von O(n 2 ).<br />

Es bleibt nur noch zu zeigen, dass jede Kante d des Shortest Path Tree zu höchstens<br />

zwei Trichtern gehören kann. Dazu stellen wir fest, dass jeweils die <strong>in</strong>neren Gebiete von<br />

zwei verschiedenen Trichtern Φ(e) und Φ(f) zu e<strong>in</strong>em Eckpunkt p disjunkt s<strong>in</strong>d. Dies ist<br />

anschaulich klar (siehe Abb. 36) und Guibas et al. beweisen es <strong>in</strong> Lemma 2.1.(b) <strong>in</strong> [GHL + 87].<br />

Außerdem berührt, da sich die Kanten des Shortest Path Tree (als kürzeste Wege) nicht<br />

schneiden, jeder Trichter nur die Kanten des Shortest Path Tree, die zu se<strong>in</strong>en Randketten<br />

gehören.<br />

Falls die betrachtete Kante d des Shortest Path Tree also zu ke<strong>in</strong>em entarteten Trichter<br />

gehört (siehe Randkante h <strong>in</strong> Abb. 8 auf S.17), dann kann sie zu höchstens zwei Trichtern<br />

gehören. Denn d kann zu jeder Seite nur e<strong>in</strong>en nicht-entarteten Trichter begrenzen. Ansonsten<br />

würden sich deren Flächen überschneiden.<br />

Gehört d andererseits zu e<strong>in</strong>em entarteten Trichter, dann ist d selbst die Oberseite dieses<br />

Trichters. Zu e<strong>in</strong>er Seite von d liegt also P C . d kann folglich nur noch zur anderen Seite h<strong>in</strong><br />

e<strong>in</strong>en Trichter begrenzen. Dort kann sich tatsächlich höchstens e<strong>in</strong> Trichter anschließen, weil<br />

sich sonst wieder die Flächen der Trichter überschneiden würden. E<strong>in</strong> weiterer entarteter<br />

Trichter kommt auch nicht <strong>in</strong> Frage. Denn e<strong>in</strong> entarteter Trichter besteht nur aus e<strong>in</strong>er<br />

Kante, der zugehörigen Polygonrandkante (=Trichteroberseite). d kann also nur Teil e<strong>in</strong>es,<br />

nämlich des eigenen, entarteten Trichters se<strong>in</strong>.<br />

Lässt man übrigens <strong>in</strong> die Argumentation noch das Resultat aus Lemma 2.1.(b) <strong>in</strong><br />

[GHL + 87] e<strong>in</strong>fließen, dass die Trichter Φ(.) zu e<strong>in</strong>em Eckpunkt p das gesamte Polygon überdecken,<br />

dann wird klar, dass jede Kante d des Shortest Path Tree zu genau zwei Trichtern<br />

gehört.<br />

Also benötigt Schritt 2c pro Aufruf l<strong>in</strong>eare Zeit, da jede Kante des Shortest Path Tree<br />

genau zweimal betrachtet wird, und dieser Baum n − 1 Kanten hat. Für den gesamten<br />

Algorithmus 3 resultiert damit e<strong>in</strong>e Laufzeit von O(n 2 ). □<br />

58

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!