Punkt-in-Polygon-Suche Übersicht
|
|
- Maria Fuchs
- vor 7 Jahren
- Abrufe
Transkript
1 Folie 1 von 43 Punkt-in-Polygon-Suche Übersicht! Praxisbeispiel/Problemstellung! Zählen von Schnittpunkten " Schnitt einer Halbgerade mit der Masche " Aufwandsbetrachtung! Streifenkarte " Vorgehen und Eigenschaften " Speicherung der Daten / Suche in den Daten " Aufwandsbetrachtung! Trapezkarte Folie 2 von 43 Praxisbeispiel Rollover am Bildschirm
2 Folie 3 von 43 Problemstellung 1 In welcher Masche liegt Punkt P? Allgemein:! Gegeben ist eine räumliche Datenbank und eine Klasse typischer Anfragen! Gesucht wird eine Datenstruktur, die einen effizienten Algorithmus unterstützt Konkret:! Gegeben ist eine Landkarte S und ein Punkt P! Gesucht wird die Masche M, die den Punkt P beinhaltet Folie 4 von 43 Lösungsansatz 1 Halbgerade am Punkt anlegen Aus dem >>Jordanschen Kurvensatz folgt:! Konstruiere ausgehend von P eine Halbgerade in beliebiger Richtung! P liegt außerhalb des begrenzten Gebietes, wenn eine gerade Anzahl von Schnittpunkten entsteht.! P liegt innerhalb des begrenzten Gebietes, wenn eine ungerade Anzahl von Schnittpunkten entsteht. 1x
3 Folie 5 von 43 Theorem Jordanscher Kurvensatz Nach Jordan:! Eine geschlossene Jordankurve S zerlegt die Ebene in zwei zusammenhängende Gebiete, von denen genau eines nicht beschränkt ist.! Zwei Punkte der Ebene können genau dann durch eine Jordankurve J verbunden werden, die S nicht schneidet, wenn sie entweder beide im Inneren oder beide im Äußeren von S liegen. Folie 6 von 43 Lösungsansatz 1 Suchaufwand Das Verfahren muss für jede Masche iteriert werden:! Aufwand für ein Polygon mit n Kanten: O(n)! Aufwand bei m Polygonen: O(m*n) Der Aufwand für eine Suche nach dem Jordanschen Kurvensatz beträgt O(m*n). Mit welchem Verfahren kann der Suchaufwand verringert werden?
4 Folie 7 von 43 Praxisbeispiel Bundesrepublik Deutschland In der Praxis kann die Anzahl der Maschen und Kanten sehr schnell hoch werden: Bundesrepublik Deutschland: 1 Masche Bundesländer: 16 Maschen mit Kanten Kreise: 440 Maschen mit Kanten Gemeinden: Maschen mit Kanten Angaben für den Massstab 1: Quelle: ArcDeutschland 500, ESRI Folie 8 von 43 Vorgehensweise 2 Konstruktion eines Index Der Aufbau eines Index kostet Zeit. Diese amortisiert sich jedoch bei der Abfrage. Allgemein:! Gegeben: Räumliche Datenbank und eine Klasse typischer Anfragen! Gesucht: Datenstruktur, die einen möglichst schnellen Algorithmus unterstützt Konkret:! Gegeben: Landkarte S und ein Punkt P! Gesucht: Index für die schnelle Identifikation der zugeordneten Masche M.
5 Folie 9 von 43 Lösungsansatz 2 Konstruktion der Streifenkarte S' Vorgehen:! Konstruktion einer Karte S' durch Aufteilung der Landkarte mit vertikalen Geraden durch alle Knoten. Folge:! In allen Schnittpunkten der Geraden mit den Kanten entstehen neue Knoten. 2x Folie 10 von 43 Lösungsansatz 2 Eigenschaften von S' S' hat folgende Eigenschaften:! Die Maschen sind in Trapeze (ggf. Dreiecke) zerlegt.! Kanten sind in Teilkanten zerlegt. 2x
6 Folie 11 von 43 Lösungsansatz 2 Vorteil von S' Die Karte erhält eine Struktur, die wir ausnutzen können:! Die Streifen sind in x-richtung angeordnet.! Innerhalb eines Streifens sind die Teilkanten und damit die Trapeze in y-richtung angeordnet. 2x Folie 12 von 43 Lösungsansatz II Speicherung der Daten Die Datenspeicherung erfolgt in Arrays:! Ein Array enthält die x-koordinaten der Streifen.! Jeder Streifen enthält ein Array der y-koordinaten der Teilkanten.
7 Folie 13 von 43 Lösungsansatz 2 Intervall-Bisektion Zwei schnelle binäre Suchalgorithmen werden für die Suche nach der Masche hintereinander geschaltet:! Binäre Suche im Array der x- Koordinaten nach dem Streifen, der P enthält.! Binäre Suche nach dem zugehörigen Trapez in diesem Streifen. Sobald die Teilkante direkt >>unterhalb/ oberhalb von P gefunden ist, ist die gesuchte Masche gefunden. 3x Folie 14 von 43 Bemerkungen Eigenschaften der Maschen Es gilt:! Jeder Abschnitt eines Streifens liegt genau in einer Masche.! Jede Kante lässt sich einer in y- Richtung folgenden Masche zuordnen.! Die Fläche"Außen" muss ebenfalls als Masche angesehen werden.
8 Folie 15 von 43 Lösungsansatz 2 Suchaufwand Der Suchaufwand dieses Lösungsansatzes entsteht durch:! Binäre Suche im Array der x-koordinaten nach dem Streifen, der P enthält: Binäre Suche in einem Array mit maximaler Länge 2n: O(log n)! Binäre Suche nach der Lage von P zu den Teilkanten im Array der y-koordinaten: Binäre Suche in einem Array mit maximaler Länge n: O(log n) Der Aufwand für die binäre Suche in einer Streifenkarte beträgt O(log n). Im >>Vergleich zum Lösungsansatz 1 hat sich der Suchaufwand verbessert. Folie 16 von 43 Vergleich Suchaufwand der zwei Lösungsansätze Der Aufwand für eine Suche nach dem Jordanschen Kurvensatz beträgt O(n). Der Suchaufwand für die binäre Suche in einer Streifenkarte beträgt O(log n).
9 Folie 17 von 43 Lösungsansatz 2 Speicherbedarf Es entsteht eine hohe Speicheranforderung durch:! die sortierte Speicherung der x-koordinaten der vertikalen Geraden in einem Array: Array der x-koordinaten: O(n)! die sortierte Speicherung der y-koordinaten der Teilkanten jedes Streifens von oben nach unten in einem Array: Array der y-koordinaten: O(n) Die Speicheranforderung für die Daten dieses Lösungsansatzes beträgt O(n²) Folie 18 von 43 Lösungsansatz 2 Worst Case Speicherbedarf Der Worst Case tritt tatsächlich auf:! In ungünstigen Fällen erfolgt mit diesem Verfahren eine sehr hohe Knoten- und Teilkantenbildung und damit ein hohes Datenaufkommen. Wie kann der Speicherbedarf verringert werden? 1x
10 Folie 19 von 43 Problemstellung 3 Verringerung des Speicherbedarfs Zwischenresümee:! Die Zerlegung in Streifen führt zu einer schnellen Suche.! Allerdings ist der Speicherbedarf unvertretbar hoch. Problem:! Gibt es eine bessere Zerlegung, die die Laufzeit erhält und den Speicherbedarf verringert? Folie 20 von 43 Lösungsansatz 3 Vereinfachung des Beispiels Um im Folgenden die Übersicht zu wahren, wird die Beispielkarte geändert:! Löschen zweier Knoten: Ersetzen von drei Kanten durch eine Kante! Verschieben zweier Knoten 2x
11 Folie 21 von 43 Lösungsansatz 3 Vereinfachende Annahmen! Umschließen der Karte durch ein achsenparalleles Rechteck R: Vermeidung der unbeschränkte Masche "Außen"! Es existieren keine Knoten mit gleicher x-koordinate: Scherung oder Rotation um den Winkel ε um den Ursprung " ε ist sehr klein wodurch die Topologie erhalten bleibt " Später wird gezeigt, dass diese Transformation rein virtuell ist 2x Folie 22 von 43 Lösungsansatz 3 Konstruktion der Trapezkarte T(S) Vorgehen:! Bei der Salamikarte werden alle Kanten der Landkarte durchschnitten. Beim Tranchieren endet der Schnitt an der Kante. Dadurch werden nur die direkt betroffenen Kanten zerlegt. 2x
12 Folie 23 von 43 Lösungsansatz 3 Konstruktionsprinzip Trapezkarte Gegeben ist eine Landkarte S, umschlossen von einem Rechteck R; es existieren keine Knoten mit gleicher x-koordinate! Konstruiere für jeden Knoten aus S eine obere und eine untere vertikale Extension (Linie); diese Linien enden am Schnittpunkt mit der nächsten Kante aus S oder an R Die Trapezkarte T(S) ist eine Zerlegung, bestehend aus der Landkarte S, dem Rechteck R und den vertikalen Extensionen! T(S) besteht aus disjunkten Trapezen (Dreiecken), die von (höchstens) vier Seiten (Kanten) begrenzt werden: " Ein oder zwei vertikale Seiten, gebildet aus den Extensionen " Genau zwei nicht-vertikale Seiten, gebildet aus Segmenten von Kanten Folie 24 von 43 Lösungsansatz 3 Eigenschaften von T(S) 5 Fälle für die vertikalen Kanten (in der Abbildung die linken Kanten): 1. Die Kante entartet zu einem Punkt 2. Die untere vertikale Erweiterung trifft auf eine Kante von S 3. Die obere vertikale Erweiterung trifft auf eine Kante von S 4. Die Kante besteht aus oberer und unterer Extension 5. Die Kante besteht aus einer Kante des Rechtecks R (genau zwei Trapeze) 5x
13 Folie 25 von 43 Lösungsansatz 3 Bezeichnungen Ein Trapez ist durch vier Elemente eindeutig festgelegt:! top( )! bottom( )! leftp( ): Linker Endpunkt von top( ) oder bottom( ) oder rechter Knoten einer dritten Kante (Trapez ganz links: einer der linken Knoten von R)! rightp( ): analog zu leftp( ) Folie 26 von 43 Lösungsansatz 3 Komplexität der Trapezkarte Satz 1: Eine Trapezkarte T(S) einer Landkarte S mit n Kanten enthält höchstens: a) 6n + 4 Knoten und b) 3n + 1 Trapeze. Beweis: a) >>Addition der vorkommenden Knoten b) mit Eulers Formel aus a) (als Übung)
14 Folie 27 von 43 Lösungsansatz 3 Beweis zu Satz 1a Satz 1: Eine Trapezkarte T(S) einer Landkarte S mit n Kanten enthält höchstens: (a) 6n + 4 Knoten Beweis: Ein Knoten der Trapezkarte ist entweder! ein Eckpunkt von R 4! ein Knoten der Karte S 2 n! Endknoten einer Extension 2 2 n (n Kanten 2 n Knoten 2 2 n Endknoten) Insgesamt: 6n + 4 Folie 28 von 43 Lösungsansatz 3 Adjazenz von Trapezen Zwei Trapeze und ' heißen adjazent, wenn sie sich entlang einer vertikalen Linie berühren. Es gilt entweder: top( ) = top( ') oder: bottom( ) = bottom( ') Ein Trapez kann höchstens zu vier Trapezen adjazent sein.
15 Folie 29 von 43 Lösungsansatz 3 Datenstruktur für T(S)! Möglich wäre eine doppelt verkettete Kantenliste! Wegen der einfachen Struktur der Trapeze bietet sich folgende Alternative an: " Elemente für Knoten (mit Koordinaten) von S (leftp( ), rightp( )) " Elemente für Kanten (mit Referenzen auf Knoten) von S (top( ), bottom( )) " Elemente für Trapeze von S'' mit Referenzen auf: # leftp( ) # rightp( ) # top( ) # bottom( ) # alle (maximal 4) adjazenten Trapeze! Beachte: Die Geometrie der Trapeze ist nur implizit, kann aber in konstanter Zeit rekonstruiert werden Folie 30 von 43 Lösungsansatz 3 Konstruktion und Suche! Probleme: " Konstruktion der Trapezkarte T(S) " Unterstützung der Suche in einer Trapezkarte! Idee für das weitere Vorgehen: " Unterstützung der Suche durch eine Art binärer Suchbaum D mit 2 Arten von Elementen # X-Elemente für Knoten: Links oder Rechts? # Y-Elemente für Kanten: Oben oder Unten? " Trapezkarte und Baum werden simultan konstruiert
16 Folie 31 von 43 Lösungsansatz 3 Beispiel für T(S) und D Folie 32 von 43 Lösungsansatz 3 Aufbau des Beispiels 33x
17 Folie 33 von 43 Lösungsansatz 3 Zum Algorithmus! T(S) und D werden simultan konstruiert! Die Suchstrukur wird schrittweise aufgebaut: Nach "Einfügen" eines Elements in der Karte S erfolgt ein Update von Suchstruktur und Trapezkarte! D ist kein Baum, sondern ein DAG, ein directed acyclic graph, ein gerichteter azyklischer Graph! Dieser DAG ist zusammenhängend, hat genau eine Wurzel und genau ein Blatt für jedes Trapez von T(S)! In der berechneten Suchstruktur referenzieren sich die Blätter von D und die Trapeze von T(S) gegenseitig! Wie stets hängt die Tiefe (=Güte) des Baumes von der Reihenfolge der Bearbeitung der Segmente ab! Idee: Zufällige Permutation der Segmente von S Folie 34 von 43 Lösungsansatz 3 Pseudocode: Aufbau von T(S) & D Input: Eine Landkarte S mit n Kanten Output:Eine Trapezkarte T(S) und eine Suchstruktur D für T(S) in einem Rechteck R 1. Konstruiere ein umschließendes Rechteck R 2. Berechne eine Permutation s 1, s 2,...,s n der Kanten von S 3. for i = 1 to n 4. do Finde die Trapeze 0,..., k in T(S i-1 ), die von s i geschnitten werden 5. Lösche 0,..., k aus T(S i-1 ) und ersetze sie durch neue Trapeze 6. Entferne die Elemente für 0,..., k aus D i-1 und füge neue innere Knoten und Blätter an
18 Folie 35 von 43 Lösungsansatz 3 Übergang von i-1 zu i Offene Frage: Wie finden wir 0,..., k?! Konstruktion von T(S i ) und D i mit S i = {s 1,..., s i } unter Verwendung von T(S i-1 ) und D i-1! "Schleifeninvariante": T(S i-1 ) ist eine Trapezkarte und D(S i-1 ) ist eine Suchstruktur für diese Trapezkarte! Der Unterschied zwischen "i - 1" und " i " betrifft genau die Trapeze in T(S i-1 ), die von s i geschnitten werden Folie 36 von 43 Lösungsansatz 3 Pseudocode: Finde Trapeze Input: Das Segment s i, T(S i-1 ) und D(S i-1 ) Output: Die Trapeze 0,..., k, die von s i geschnitten werden. 1. Seien p i und q i linker und rechter Knoten von s i 2. Punkt-in-Polygon für p i in D i-1 : Finde 0 3. j = 0; 4. while q i liegt rechts von rightp( j ) 5. do if rightp( j ) liegt oberhalb von s i 6. then j+1 ist der untere rechte Nachbar von j 7. else j+1 ist der obere rechte Nachbar von j 8. j = j return 0,..., k Wir erhalten zwei Fälle
19 Folie 37 von 43 Lösungsansatz 3 Trapezfolge Fall 1 Folie 38 von 43 Lösungsansatz 3 Beispiel zum Fall 1 15x
20 Folie 39 von 43 Lösungsansatz 3 Trapezfolge Fall 2 Folie 40 von 43 Lösungsansatz 3 Beispiel für Fall 2 21x
21 Folie 41 von 43 Lösungsansatz 3 Effizienz I - Erwartungswerte Der oben beschriebene Algorithmus hat folgende Erwartungswerte (gemittelt über alle Permutationen von n Segmenten):! Konstruktion von T(S) und Aufbau von D(S): O(n log n)! Speicherplatz von D(S): O(n)! Punkt-in-Polygon-Suche mittels D(S): O(log n) Folie 42 von 43 Lösungsansatz Effizienz II - Bemerkungen! Der Erwartungswert bezieht sich auf die Menge aller Permutationen! Pech bei der Permutation kann zum Worst Case O(n) für die Suche und zu entsprechender Tiefe der Suchstruktur führen! Abhilfe durch Stop-Loss-Punkt setzen: Brich ab, falls D(S) zu tief wird, und fange neu an mit einer neuen Permutation! Differenz zum Worst-Case O(n) für die Suche und O(n 2 ) für die Konstruktion kann beliebig klein gemacht werden, ohne daß man von der O(n log n) Laufzeit für die Konstruktion von D(S) sehr stark abweicht
22 Folie 43 von 43 Lösungsansatz 3 Sonderfallbetrachtung Was macht man, wenn 2 Knoten die gleichen x-koordinaten haben?! Beobachtung: die vertikalen Extensionen müssen eigentlich nicht vertikal, sondern nur parallel sein! Wichtig sind nur die topologischen Invarianten links / rechts an den x-knoten und oben / unten an den y-knoten! Abhilfe durch Transformation (x,y) (x + ε * y, y) für geeignet kleines Epsilon! Diese Transformation wird aber in Wirklichkeit gar nicht durchgeführt, sondern: (x,y) liegt rechts von (x',y') falls x > x' oder x = x' und y > y'! Oben / Unten Vergleich an y-knoten für Segmente in the same spirit (als Übung)
Geometrische Algorithmen Punkt-in-Polygon-Suche. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Punkt-in-Polygon-Suche
Folie 1 von 51 Geometrische Algorithmen Punkt-in-Polygon-Suche Folie 2 von 51 Punkt-in-Polygon-Suche Übersicht Praxisbeispiel/Problemstellung Zählen von Schnittpunkten Schnitt einer Halbgerade mit der
MehrPunkt-in-Polygon-Suche Übersicht
Folie 1 von 19 Punkt-in-Polygon-Suche Übersicht Praxisbeispiel/Problemstellung Zählen von Schnittpunkten Schnitt einer Halbgerade mit der Masche Aufwandsbetrachtung Streifenkarte Vorgehen und Eigenschaften
MehrWas bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone
Was bisher geschah Motivation, Beispiele geometrische Objekte im R 2 : Punkt, Gerade, Halbebene, Strecke, Polygon, ebene Zerlegung in Regionen (planare Graphen) maschinelle Repräsentation geometrischer
MehrPunktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.05.2011 Motivation Gegeben eine Position p = (p x, p y )
MehrPunktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 22.05.2012 Nachtrag: Dynamische Bereichsabfragen Letzte Woche: kd-trees und Range-Trees
MehrPunktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung
Punktlokalisation 1. Trapez-Zerlegungen 2. Eine Suchstruktur 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung 4. Analyse Punktlokalisation Einteilung in Streifen Anfragezeit:
MehrVoronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 29.05.2011 Das Postamt-Problem b(p, q) = {x R 2 : xp = xq } p q h(p, q) h(q, p) = {x :
MehrVoronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x
MehrVorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 22.04.2014 Überlagern von Kartenebenen Beispiel: Gegeben zwei verschiedene Kartenebenen,
MehrGeometrische Algorithmen Voronoi-Diagramme. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Voronoi-Diagramme
Folie 1 von 32 Geometrische Algorithmen Voronoi-Diagramme Folie 2 von 32 Voronoi-Diagramme Übersicht Problemstellung Animation zur Konstruktion eines Voronoi-Diagramms Definition, Eigenschaften eines Voronoi-Diagramms
MehrVorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei verschiedene Kartenebenen,
MehrVorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei verschiedene Kartenebenen,
MehrBereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 20.05.2014 Objekttypen in Bereichsabfragen y0 y0 y x x0 Bisher betrachteter Fall Eingabe:
MehrAlgorithmische Geometrie 7. Punktsuche (Teil 2)
Algorithmische Geometrie 7. Punktsuche (Teil 2) JProf. Dr. Heike Leitte Computergraphik und Visualisierung Inhaltsverzeichnis 1. Einführung 2. Konvexe Hülle 3. Schnitte von Liniensegmenten 4. Schnitte
MehrKlausur. 18. Juli 2008, 10:15-12:15 Uhr. Name:... Matrikelnummer:... Anzahl beschriebener Blätter (ohne Aufgabenblatt):... D(p) : Y = p x X + p y
GRUNDZÜGE DER ALGORITHMISCHEN GEOMETRIE Klausur 18. Juli 2008, 10:15-12:15 Uhr Name:................................... Matrikelnummer:................................... Anzahl beschriebener Blätter (ohne
MehrVorlesung Geometrische Algorithmen Generierung von Nicht-uniformen Netzen Sven Schuierer
Vorlesung Geometrische Algorithmen Generierung von Nicht-uniformen Netzen Sven Schuierer Uberblick 1. Anwendung 2. Anforderungen an Netze 3. Quadrantenbaume Quadrantenbaume fur Punktemengen Bestimmung
MehrLineare Programmierung
Übung Algorithmische Geometrie Lineare Programmierung LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 14.05.2014 Übersicht Übungsblatt 4 Lineares
MehrPolygontriangulierung
Vorlesung Algorithmische Geometrie Polygone triangulieren LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 26.04.2011 Das Kunstgalerie-Problem
MehrBereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.07.2012 Objekttypen in Bereichsabfragen y0 y0 y x x0 Bisher
MehrGeometrische Algorithmen Segmentschnitt
Folie 1 von 36 Geometrische Algorithmen Segmentschnitt Folie 2 von 36 Segmentschnitt Übersicht Zwei Segmente Lage zweier Segmente Prüfung auf Schnittfreiheit Formeln zum Geradenschnitt Feststellen des
MehrGeometrische Algorithmen Segmentschnitt
Folie 1 von 36 Geometrische Algorithmen Segmentschnitt Folie 2 von 36 Segmentschnitt Übersicht Zwei Segmente! Lage zweier Segmente! Prüfung auf Schnittfreiheit! Formeln zum Geradenschnitt! Feststellen
MehrBereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.07.2012 Objekttypen in Bereichsabfragen y0 y x x0 Bisher
MehrAlgorithmische Geometrie 3. Schnitte von Liniensegmenten
Algorithmische Geometrie 3. Schnitte von Liniensegmenten JProf. Dr. Heike Leitte Computergraphik und Visualisierung Inhaltsverzeichnis 1. Einführung 2. Konvexe Hülle 3. Schnitte von Liniensegmenten 4.
MehrAlgorithmische Geometrie: Schnittpunkte von Strecken
Algorithmische Geometrie: Schnittpunkte von Strecken Nico Düvelmeyer WS 2009/2010, 3.11.2009 3 Phasen im Algorithmenentwurf 1. Konzentration auf das Hauptproblem 2. Verallgemeinerung auf entartete Eingaben
Mehr2.2. Schnitte von Liniensegmenten
Wir wenden uns nun dem Problem (2) aus 1 zu. F15 Aus zwei Mengen S1, S2 von Liniensegmenten möchten wir alle Schnittpunkte der Segmente aus S1 mit denen aus S2 ermitteln. Wir legen fest, dass sich zwei
MehrLernmodul 7 Algorithmus von Dijkstra
Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer
MehrAlgorithmische Geometrie: Voronoi Diagramme (Teil 2)
Algorithmische Geometrie: Voronoi Diagramme (Teil 2) Nico Düvelmeyer WS 2009/2010, 12.1.2010 Überblick 1 Definition und grundlegende Eigenschaften (Wied.) 2 Bestimmung des Voronoi Diagramms Gleitebenenverfahren
MehrGeometrische Algorithmen Segmentschnitt. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Segmentschnitt
Folie 1 von 37 Geometrische Algorithmen Segmentschnitt Folie 2 von 37 Segmentschnitt Übersicht Zwei Segmente Lage zweier Segmente Prüfung auf Schnittfreiheit Formeln zum Geradenschnitt Feststellen des
MehrAlgorithmische Techniken für Geometrische Probleme
Algorithmische Techniken für Geometrische Probleme Berthold Vöcking 14. Juni 2007 Inhaltsverzeichnis 1 Die Sweepline-Technik 2 1.1 Schnitte orthogonaler Liniensegmente............... 2 1.2 Schnitte beliebiger
MehrAlgorithmische Geometrie: Delaunay Triangulierung (Teil 2)
Algorithmische Geometrie: Delaunay Triangulierung (Teil 2) Nico Düvelmeyer WS 2009/2010, 2.2.2010 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller
MehrBereichsabfragen. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.05.2011 Geometrie in Datenbanken In einer Personaldatenbank
MehrLiniensegmentschnitt. Doppelt verkettete Kantenliste. Überlagerung von 2 ebenen Graphen. Boolsche Operatoren für einfache Polygone (LEDA)
Liniensegmentschnitt Motivation, Überlagerung von Karten, Problemformulierung Ein einfaches Problem und dessen Lösung mit Hilfe des Sweep-Line Prinzips Output-sensitiver Liniensegmentschnittalgorithmus
MehrÜbungsblatt 7 - Voronoi Diagramme
Karlsruher Institut für Technologie Algorithmische Geometrie Fakultät für Informatik Sommersemester 2012 ITI Wagner Martin Nöllenburg/Andreas Gemsa Übungsblatt 7 - Voronoi Diagramme 1 Voronoi-Zellen Sei
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine
MehrPolygontriangulierung
Übung Algorithmische Geometrie Polygontriangulierung LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 05.05.2011 Ablauf Besprechung ÜB3 Korrektheitsbeweis
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 03.12.2013 Algorithmische Geometrie: Schnitte von Strecken Sweep-Line INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg
MehrGeradenarrangements und Dualität von Punkten und Geraden
Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare
MehrPolygontriangulierung
Übung Algorithmische Geometrie Polygontriangulierung LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 07.05.204 Ablauf Vergabe der Projekte Übungsblatt
MehrGeradenarrangements und Dualität von Punkten und Geraden
Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.06.2014 1 Dualitätsabbildung Bisher haben wir Dualität für planare
MehrGeradenarrangements und Dualität von Punkten und Geraden
Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare
MehrKapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete
Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 00
MehrUberblick 1. Kurzeste Wege 2. Sichtbarkeitsgraphen 3. Berechnung des Sichtbarkeitsgraphen 4. Kurzeste Wege fur polygonale Roboter 1
Vorlesung Geometrische Algorithmen Sichtbarkeitsgraphen und kurzeste Wege Sven Schuierer Uberblick 1. Kurzeste Wege 2. Sichtbarkeitsgraphen 3. Berechnung des Sichtbarkeitsgraphen 4. Kurzeste Wege fur polygonale
Mehr9. Natürliche Suchbäume
Bäume Bäume sind. Natürliche Suchbäume [Ottman/Widmayer, Kap..1, Cormen et al, Kap. 12.1-12.] Verallgemeinerte Listen: Knoten können mehrere Nachfolger haben Spezielle Graphen: Graphen bestehen aus Knoten
MehrGeometrische Algorithmen Einige einfache Definitionen: Ist ein Punkt in einem Polygon? Punkt-in-Polygon-Problem. Das Punkt-in-Polygon-Problem
Geometrische Algorithmen Einige einfache Definitionen: Punkt: im n-dimensionalen Raum ist ein n-tupel (n Koordinaten) Gerade: definiert durch zwei beliebige Punkte auf ihr Strecke: definiert durch ihre
MehrSeminar. Algorithmische Geometrie
Seminar Algorithmische Geometrie WS 2000/2001 Thema: Konvexe Hülle Mirko Dennler 21439 Inhaltsverzeichnis Konvexe Hülle 1. Problemstellung 3 2. GRAHAMS SCAN 4-5 3. JARVIS' MARCH 5-6 4. QUICK HULL 6-7 5.
MehrUberblick 1. Problemstellung 2. Kongurationsraum 3. Bewegungsplanung fur einen Punktroboter 4. Minkowski Summen 5. Pseudo-Scheiben 6. Bewegungsplanung
Vorlesung Geometrische Algorithmen Bewegungsplanung fur Roboter (Robot Motion Planning) Sven Schuierer Uberblick 1. Problemstellung 2. Kongurationsraum 3. Bewegungsplanung fur einen Punktroboter 4. Minkowski
MehrSortieren II / HeapSort Heaps
Organisatorisches VL-07: Sortieren II: HeapSort (Datenstrukturen und Algorithmen, SS 2017) Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Email: dsal-i1@algo.rwth-aachen.de Webseite: http://algo.rwth-aachen.de/lehre/ss17/dsa.php
MehrWiederholung. Bäume sind zyklenfrei. Rekursive Definition: Baum = Wurzelknoten + disjunkte Menge von Kindbäumen.
Wiederholung Baum: Gerichteter Graph, der die folgenden drei Bedingungen erfüllt: Es gibt einen Knoten, der nicht Endknoten einer Kante ist. (Dieser Knoten heißt Wurzel des Baums.) Jeder andere Knoten
MehrParallele Algorithmen in der Bildverarbeitung
Seminar über Algorithmen - SoSe 2009 Parallele Algorithmen in der Bildverarbeitung von Christopher Keiner 1 Allgemeines 1.1 Einleitung Parallele Algorithmen gewinnen immer stärker an Bedeutung. Es existieren
MehrAlgorithmische Geometrie: Arrangements und
Algorithmische Geometrie: Arrangements und Dualität Nico Düvelmeyer WS 2009/2010, 19.1.2010 Überblick 1 Strahlenverfolgung und Diskrepanz 2 Dualität Dualitäts-Abbildung Transformation des Problems zur
MehrGrundzüge von Algorithmen und Datenstrukturen, WS 15/16: Lösungshinweise zum 13. Übungsblatt
U N S A R I V E R S A V I E I T A S N I S S Grundzüge von Algorithmen und Datenstrukturen, WS /6: Lösungshinweise zum 3. Übungsblatt Christian Hoffmann, Fabian Bendun Aufgabe 3. (a) Sei j i + = n die Größe
MehrGrundlagen zur Delaunay-Triangulierung und zur konvexen Hülle. zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"):
Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"): 1 Erzeugung des Voronoi-Diagramms (siehe Vorlesung "Algorithmische
MehrHallo Welt für Fortgeschrittene
Hallo Welt für Fortgeschrittene Geometrie II Benjamin Zenke Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Inhalt Closest Pair Divide & Conquer Bereichssuche Gitterverfahren k-d-tree Sweep-Line-Algorithmen
MehrAlgorithmische Geometrie: Abfragen Orthogonaler Bereiche
Algorithmische Geometrie: Abfragen Orthogonaler Bereiche Nico Düvelmeyer WS 2009/2010, 8.12.2009 Überblick 1 1-dimensionale Bereichsabfragen 2 Kd-Baum Struktur Aufbau Abfrage mit dem Kd-Baum 3 Range-Baum
MehrAlgorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8
ETH Zürich Institut für Theoretische Informatik Prof. Dr. Angelika Steger Florian Meier, Ralph Keusch HS 2017 Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 Lösungsvorschlag zu Aufgabe 1
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Lerneinheit 3: Greedy Algorithmen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 2016 10.5.2016 Einleitung Einleitung Diese Lerneinheit
MehrSuchen und Sortieren Sortieren. Heaps
Suchen und Heaps (Folie 156, Seite 56 im Skript) Definition Ein Heap ist ein Binärbaum, der die Heapeigenschaft hat (Kinder sind größer als der Vater), bis auf die letzte Ebene vollständig besetzt ist,
MehrÜbersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015
Datenstrukturen und Algorithmen Vorlesung 8: (K6) 1 Joost-Pieter Katoen Lehrstuhl für Informatik Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 7. Mai 015 3 Joost-Pieter
Mehrelementare Datenstrukturen
elementare Datenstrukturen Wie die Daten das Laufen lernten Andreas Ferber af@myipv6.de elementare Datenstrukturen p./40 KISS elementare Datenstrukturen p./40 KISS (Keep It Simple, Stupid) Immer die einfachste
Mehr7. Triangulation von einfachen Polygonen
1 7. Triangulation von einfachen Polygonen 2 Ziel Bessere Laufzeit als O(n log n) durch schnelleres Berechnen der Trapezzerlegung des Polygons. 3 Idee Finde Methode, den Anfangspunkt einer Strecke in der
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Sortieralgorithmen Einleitung Heapsort Quicksort 2 Motivation Sortieren ist Voraussetzung für viele Anwendungen Nach
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 Bäume: Grundlagen und natürliche Suchbäume) Prof. Dr. Susanne Albers Bäume (1) Bäume sind verallgemeinerte Listen (jedes Knoten-Element kann mehr
MehrAlgorithmen und Datenstrukturen
Universität Innsbruck Institut für Informatik Zweite Prüfung 16. Oktober 2008 Algorithmen und Datenstrukturen Name: Matrikelnr: Die Prüfung besteht aus 8 Aufgaben. Die verfügbaren Punkte für jede Aufgabe
MehrDas Suchproblem. Gegeben Menge von Datensätzen. Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle
119 4. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Exponentielle Suche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.1-3,2.2-3,2.3-5] 120 Das Suchproblem Gegeben
MehrDas Suchproblem 4. Suchen Das Auswahlproblem Suche in Array
Das Suchproblem Gegeben. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Exponentielle Suche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.-3,2.2-3,2.3-] Menge
MehrPolygontriangulierung
Vorlesung Algorithmische Geometrie Polygone triangulieren INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.05.2012 Das Kunstgalerie-Problem Aufgabe: Installiere ein Kamerasystem
MehrKapitel 6: Algorithmen der Computer-Geometrie
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Kapitel 6: Algorithmen der Computer-Geometrie Skript zur Vorlesung Geo-Informationssysteme Wintersemester 2015/16 Ludwig-Maximilians-Universität
MehrDas Divide - and - Conquer Prinzip. Quicksort Formulierung und Analyse des Prinzips Geometrisches Divide and Conquer - Closest-Pair - Segmentschnitt
Divide and Conquer Das Divide - and - Conquer Prinzip Quicksort Formulierung und Analyse des Prinzips Geometrisches Divide and Conquer - Closest-Pair - Segmentschnitt 2 Quicksort: Sortieren durch Teilen
MehrAlgorithmische Geometrie, SoSe 2005 Skriptmitschrift vom 29. April 2005
Algorithmische Geometrie, SoSe 2005 Skriptmitschrift vom 29. April 2005 Antonia Wittmers Igor Savchenko Konvexe Hüllen Inkrementeller Algorithmus für die konvexe Hülle Dabei heißt inkrementeller Algorithmus,
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
MehrProportional Symbol Maps
Proportional Symbol Maps Florian Simon 8. Dezember, 2009 Proportional Symbol Maps Gegeben: Punkte p 1,..., p n R 2 mit zugeordneten Werten w 1,..., w n R Proportional Symbol Maps Gegeben: Punkte p 1,...,
MehrKap. 3: Sortieren (3)
Kap. 3: Sortieren (3) Professor Dr. Lehrstuhl für Algorithm Engineering, LS Fakultät für Informatik, TU Dortmund 6. VO DAP2 SS 2009 30. April 2009 Überblick Quick-Sort Analyse von Quick-Sort Quick-Sort
MehrVoronoi Diagrams. Christian Wellenbrock. December 1, 2009
December 1, 2009 Das Voronoi Diagramm Problemstellung Gegeben: Menge der Zentren P = {p 1,..., p n } R 2 Das Voronoi Diagramm Problemstellung Gegeben: Menge der Zentren P = {p 1,..., p n } R 2 Gesucht:
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (22 - AVL-Bäume: Entfernen) Prof. Dr. Susanne Albers Definition von AVL-Bäumen Definition: Ein binärer Suchbaum heißt AVL-Baum oder höhenbalanziert,
MehrGeometrie 2. Julian Fischer Julian Fischer Geometrie / 30
Geometrie 2 Julian Fischer 6.7.2009 Julian Fischer Geometrie 2 6.7.2009 1 / 30 Themen 1 Bereichssuche und kd-bäume 1 Bereichssuche 2 kd-bäume 2 Divide and Conquer 1 Closest pair 2 Beispiel: Points (IOI
MehrGeoinformation I Landkarten
Folie 1 von 17 Geoinformation I Landkarten Folie 2 von 17 Landkarte Übersicht! Tesselation: Definition! Landkarte " Definition " Einschränkungen " Topologische Beziehungen " Euler-Formel " Topologische
MehrGeoinformation I Landkarten
Folie 1 von 17 Geoinformation I Landkarten Folie 2 von 17 Landkarte Übersicht Tesselation: Definition Landkarte Definition Einschränkungen Topologische Beziehungen Euler-Formel Topologische Fehler Integritätsbedingungen
MehrDas Suchproblem 4. Suchen Das Auswahlproblem Suche in Array
Das Suchproblem Gegeben. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.-3,2.2-3,2.3-] Menge von Datensätzen. Beispiele
MehrDatenstrukturen und Algorithmen D-INFK. Musterlösung 1
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik Peter Widmayer
MehrGeometrische Algorithmen
Geometrische Algorithmen Thomas Röfer Motivation Scan-line-Prinzip Konvexe Hülle Distanzprobleme Voronoi-Diagramm Rückblick Manipulation von Mengen Vorrangwarteschlange Heap HeapSort swap(a, 0, 4) 1 5
Mehr13. Hashing. AVL-Bäume: Frage: Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n)
AVL-Bäume: Ausgabe aller Elemente in O(n) Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n) Frage: Kann man Einfügen, Löschen und Suchen in O(1) Zeit? 1 Hashing einfache Methode
MehrBerechnung von Abständen
3. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 3.4. Es sei G = (V, E) ein Graph. Der Abstand d(v, w) zweier Knoten v, w V ist die minimale Länge eines Weges von v nach w.
MehrDatenstrukturen Teil 2. Bäume. Definition. Definition. Definition. Bäume sind verallgemeinerte Listen. Sie sind weiter spezielle Graphen
Bäume sind verallgemeinerte Listen Datenstrukturen Teil 2 Bäume Jeder Knoten kann mehrere Nachfolger haben Sie sind weiter spezielle Graphen Graphen bestehen aus Knoten und Kanten Kanten können gerichtet
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Graphdurchläufe Maike Buchin 22. und 27.6.2017 Graphexploration Motivation: Für viele Zwecke will man den gesamten Graphen durchlaufen, zb. um festzustellen ob er (stark) zusammenhängt.
MehrDas Suchproblem. Gegeben Menge von Datensätzen. Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle
122 4. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.1-3,2.2-3,2.3-5] 123 Das Suchproblem Gegeben Menge von Datensätzen.
Mehr7. Sortieren Lernziele. 7. Sortieren
7. Sortieren Lernziele 7. Sortieren Lernziele: Die wichtigsten Sortierverfahren kennen und einsetzen können, Aufwand und weitere Eigenschaften der Sortierverfahren kennen, das Problemlösungsparadigma Teile-und-herrsche
MehrInformatik II Prüfungsvorbereitungskurs
Informatik II Prüfungsvorbereitungskurs Tag 4, 23.6.2016 Giuseppe Accaputo g@accaputo.ch 1 Programm für heute Repetition Datenstrukturen Unter anderem Fragen von gestern Point-in-Polygon Algorithmus Shortest
MehrLösungen zu Kapitel 5
Lösungen zu Kapitel 5 Lösung zu Aufgabe : (a) Es gibt derartige Graphen: (b) Offensichtlich besitzen 0 der Graphen einen solchen Teilgraphen. Lösung zu Aufgabe : Es sei G = (V, E) zusammenhängend und V
MehrAufgabensammlung zur algorithmischen Geometrie
1 Aufgabensammlung zur algorithmischen Geometrie 2012WS Andreas Kriegl 1. Konvexe Hülle als Durchschnitt. Zeige, daß der Durchschnitt konvexer Mengen wieder konvex ist und somit die konvexe Hülle einer
Mehr5. Vorrangwarteschlangen - Priority Queues
5. Vorrangwarteschlangen - Priority Queues Priority Queues unterstützen die Operationen Insert(), Delete(), ExtractMin(), FindMin(), DecreaseKey(), Merge(). Priority Queues per se sind nicht für IsElement()-Anfragen,
MehrHumboldt-Universität zu Berlin Berlin, den Institut für Informatik
Humboldt-Universität zu Berlin Berlin, den 15.06.2015 Institut für Informatik Prof. Dr. Ulf Leser Übungen zur Vorlesung M. Bux, B. Grußien, J. Sürmeli, S. Wandelt Algorithmen und Datenstrukturen Übungsblatt
Mehr9 Arrangements und Dualität
9 Arrangements und Dualität 9.1 Strahlenverfolgung und Diskrepanz Wir betrachten eine Anwendung aus der Computergraphik: realistische Bilder von 3D- Szenen lassen sich durch ray tracing berechnen. Für
MehrInformatik II, SS 2016
Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 11 (1.6.2016) Binäre Suchbäume III Algorithmen und Komplexität Tiefe eines binären Suchbaums Worst-Case Laufzeit der Operationen in binären
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Wintersemester 2012/13 25. Vorlesung Dynamisches Programmieren Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Klausurvorbereitung Tipp: Schreiben Sie sich alle Fragen
MehrAlgorithmen zur Visualisierung von Graphen
Algorithmen zur Visualisierung von Graphen Teile & Herrsche-Algorithmen: Bäume und serien-parallele Graphen Vorlesung im Wintersemester 20/202..202 Algorithmen zum Zeichnen von Bäumen Anwendbarkeit Gut
MehrInformatik II, SS 2016
Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:
Mehr8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.
8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.
Mehr