Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Diskrete Mathe II Übung 2.5.2005.

Ähnliche Präsentationen


Präsentation zum Thema: "Diskrete Mathe II Übung 2.5.2005."—  Präsentation transkript:

1 Diskrete Mathe II Übung

2 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Ü2 Stellt das AK Bonn Nord und AS Tannenbusch (incl. aller abgehenden Kanten) als Graphen dar, der als Eingabe für den Algorithmus von Dijkstra geeignet ist. Verwendet eine sinnvolle Benennung der Knoten. IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

3 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Ü2 nach/von Siegburg nach/von Köln Verteilerkreis Bonn Bornheimer Straße Hohe Straße nach/von Koblenz IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

4 Floyd – Adjazenzmatrix
IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

5 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Floyd – Graph A 7 E 4 12 B 2 3 1 C 8 D IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

6 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Floyd – Pseudocode 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 }   }    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]; IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

7 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Floyd – Folgen Was fällt nachteilig auf? Welche Daten stehen in A und C? IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

8 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Floyd – Wegmitführung 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: Wege          A[j,k] = C[j,k]; W[j,k] = ∞;      //C: Kanten }   }    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; IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

9 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Floyd – Wegmitführung Was steht in der Matrix W? IKG - Übung Diskrete Mathe II – Jörg Schmittwilken

10 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken
Übungsaufgabe D E A B C 30 90 20 40 100 10 Notiert die dem obigen Graphen entsprechende Adjazenzmatrix für die Kantengewichte (Kosten). Wendet den Algorithmus von Floyd auf den Graphen an und notiert die jeweilig aktuellen Kosten in der Adjazenzmatrix. Wählt dazu die Felder der Matrix so groß, dass neue Werte neben den alten geschrieben werden können. 8 5 IKG - Übung Diskrete Mathe II – Jörg Schmittwilken


Herunterladen ppt "Diskrete Mathe II Übung 2.5.2005."

Ähnliche Präsentationen


Google-Anzeigen