Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 3 27.04.00 der Algorithmus von Floyd Foliendesign:

Slides:



Advertisements
Ähnliche Präsentationen
Vortrag von Stephanie Weirauch Jens Pleger Peter Jancke Frank Wejmelka
Advertisements

Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Algorithm Engineering
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
Baumstrukturen Richard Göbel.
WS Algorithmentheorie 13 - Kürzeste (billigste) Wege Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (05 – Elementare Datenstrukturen) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 6 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Diskrete Mathe II Übung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung Foliendesign: cand. geod. Jörg Steinrücken.
Geoinformation II Vorlesung
Diskrete Mathematik I Vorlesung Arrays-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Übung Diskrete Mathematik SS 2003 Segmentschnitt I.
Institut für Kartographie und Geoinformation Dipl.-Ing. J. Schmittwilken Diskrete Mathe II Übung
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Ü6 Wendet den Scan-Line Algorithmus auf unten stehende Situation.
Klausur „Diskrete Mathematik II“
Geoinformation II Vorlesung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Bäume-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
Problemstellung Berechne die Summe der Quadrate aller natürlichen Zahlen bis zu einer vorgegebenen Zahl (bspw. 100)! Oder mathematisch: Berechne.
Vortrag über Graphen Von Jörg Hendricks.
Diskrete Mathe 9 Vorlesung 9 SS 2001
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
Effiziente Algorithmen
Diskrete Mathematik II
Geoinformation I Vorlesung 8 WS 2000/2001 Graphen.
Diskrete Mathematik II
Geoinformation II Vorlesung 4 SS 2001 Voronoi-Diagramme.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
Konstruktion der Voronoi-Diagramme II
Geoinformation II (6. Semester)
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 5 SS 2001 Segmentschnitt II (n Segmente)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Vorlesung Binärer Suchbaum II-
Informatik Datenstruktur Graph 3.2 Repräsentation von Graphen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 6 SS 2001 Segmentschnitt III.
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Diskrete Mathe II Übung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Vorlesung Einführendes Beispiel-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung April 2000 AVL-Bäume.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Rekursion-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Übung5 Prüft, ob sich folgende Segmente schneiden: –P1(1/7) P2(3/1)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Binärer Suchbaum III- -AVL-Baum-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Suche des kürzesten Weges in einem Netz.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Gruppeneinteilung Gruppe A: Mo 12:00 – 12:45 Uhr –bis einschließlich.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Voronoi-Diagramme.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd.
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Hinweis Heutige Übung zum Thema Floyd Donnerstag keine Vorlesung.
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Binärer Suchbaum I-
Diskrete Mathe Diskrete Mathematik I Listen Vorlesung 4.
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Graph_Algorithmen Einführung Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Diskrete Mathematik II
 Präsentation transkript:

Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd Foliendesign: cand. geod. Jörg Steinrücken

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Übersicht letzte Stunden: –Algorithmus von Dijkstra –alle kürzesten Wege von einem Knoten (1:n) – Datenstrukuren für den Algorithmus von Dijkstra Datenstruktur für Graphen mit Kosten –Adjazenzliste –Adjazenzmatrix Datenstruktur für grüne Knoten Heute: –Algorithmus von Floyd –kürzeste Wege zwischen allen Paaren von Knoten (n:n)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Algorithmus von Floyd Problem: Bestimmung der kürzesten Wege zwischen allen Paaren von Knoten Lösung –iterative Anwendung des Algorithmus von Dijkstra –besser: Algorithmus von Floyd

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Algorithmus von Floyd: Idee 20 Do Ha W 15 betrachteter Knoten Vorgänger Nachfolger 35 füge neue direkte Kante ein, wenn noch keine Kante vorhanden oder die neue Kante kürzer ist als eine vorhandene

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Algorithmus von Floyd: Idee 20 Do Ha W 15 Für jeden Knoten 35 Für jedes Paar Vorgänger / Nachfolger

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D betrachteter Knoten Vorgänger Nachfolger Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Knoten besitzt nur Nachfolger Algorithmus von Floyd (Beispiel) fangen wir wieder an mit Dortmund

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Do W 35 Algorithmus von Floyd (Beispiel) als nächstes Hagen

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Do Ha Du K D Algorithmus von Floyd (Beispiel) Jetzt haben wir 2 Vorgänge und 3 Nachfolger - wie viele Paare also?

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Do Ha WD Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel) 150

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Do Ha W Du K Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel) 95

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel) 80

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Do Ha W Du K D Algorithmus von Floyd (Beispiel)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Implementierung mit der Kostenmatrix-Darstellung private floyd (float A [n,n], float C [n,n]) {int i, j, k; for(j = 1; j <= n; j++) {for(k = 1; k <=n; k++) //A: Wege { A[j,k] = C[j,k]; } //C: Kanten, ggf.  } for(i = 1; i <= n; i++) { for(j = 1; j <= n; j++) { for(k = 1; k <= n; k++) { if(A[j,i] + A[i,k] < A[j,k]) { A[j,k] = A[j,i] + A[i,k]; }}}}} Heute wieder Java!

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Floyd-Erweiterung: Mitführung der kürzesten Wege private floyd (float A[n,n], float C[n,n], int W[n,n]) {int i, j, k; for(j = 1; j <= n; j++) {for(k = 1; k <=n; k++) { A[j,k] = C[j,k]; W[j,k] =  } } for(i = 1; i <= n; i++) { for(j = 1; j <= n; j++) { for(k = 1; k <= n; k++) { if(A[j,i] + A[i,k] < A[j,k]) { A[j,k] = A[j,i] + A[i,k]; W[j,k] = i; }}}}}

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Floyd (3) Beachten Sie: –Die Ausgabeprozedur setzt voraus, daß ein Weg zwischen 2 Knoten x und y existiert Übung: –Wie sehen Sie der Matrix A an, ob ein Weg zwischen 2 Knoten existiert –allgemeiner: Wie sehen Sie der Matrix A an, ob der Graph zusammenhängend ist –der Graph ist zusammenhängend, wenn zwischen jedem Paar (a,b) von Knoten ein Weg existiert –beachten Sie, dass wir von gerichteten Graphen sprechen, also (a,b)  (b,a)

Lutz Plümer - Diskrete Mathematik II - SS Vorlesung Ausgabe des kürzesten Weges public weg(int[][] W,int X,int Y) //gibt kürzesten Weg von X nach Y aus { weg_rekursiv(X,Y); gib Y aus; } private weg_rekursiv(int[][] W,int X,int Y) { if( W[X,Y] =  ) then gib X aus; else {Z = W[X,Y]; weg_rekursiv(W,X,Z); weg_rekursiv(W,Z,Y);}

Schönen Dank für Ihre Aufmerksamkeit und Auf Wiedersehen