Informatik Datenstruktur Graph 3.2 Repräsentation von Graphen

Slides:



Advertisements
Ähnliche Präsentationen
Imperative Programmierung
Advertisements

Datenstrukturen und Algorithmen
Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
Verschachtelte Schleifen
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
der Universität Oldenburg
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Referenzen und Zeichenketten
Bioverfahrenstechnik SS 2013
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
FOR Anweisung.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (20 – Graphen)
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26 - Graphen) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.

EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 12 Claudio Moraga, Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
3.1.4 Leser/Schreiber-Ausschluß (reader/writer exclusion)
Diskrete Mathe II Übung
Klausur „Diskrete Mathematik II“
Schiller-Gymnasium Hof Manuel Friedrich OStR,
Bestimmung des ggT zweier Zahlen
Informatikunterricht mit Java
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Vortrag über Graphen Von Jörg Hendricks.
Diskrete Mathematik II
Effiziente Algorithmen
Die Zählschleife int s = 0 for (int k=1; k
Institut für Theoretische Informatik
Informatik 1 Übung 4.
Technische Informatik Reihungen – Felder - Arrays.
1.3 Klassen und Beziehungen
1.3 Klassen und Beziehungen
Graphen (1) 1 Helmut Schauer Educational Engineering Lab
Informatik Datenstruktur Graph 3.1 Einfache Graphen
Informatik Datenstruktur Graph 3.3 Durchlaufen von Graphen
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
se_4_graphen_und_baeume_I.ppt1 Softwareengineering Graphen und Bäume 1 Prof. Dr.-Ing. Axel Benz, Berlin School of Economics and Law.
Programmiervorkurs WS 2014/15 Methoden
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
Charles Babbage Profil Entwicklungen Erfindung Ada Lovelace.
„Wiederherstellung artenreichen Hochmoor-Grünlandes im Vergleich verschiedener Bewirtschaftungsvarianten“ Ergebnisse bodenchemischer und -biologischer.
Karl-Franzens Universität Graz, Inst. f. Psychologie, Abt. f
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
10 Graphen gerichtete und ungerichtete, mit Marken an Ecken und/oder Kanten Anwendungsgebiete: Verkehrsnetze, Kommunikationsnetze, Netzpläne, Spiele,...
Java-Kurs - 3. Übung Hausaufgabe Arrays For-Schleifen.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Sammlungsklassen Array.
Informatik Beschreibung von Abläufen durch Algorithmen 3.3 Wiederholugnsanweisungen 3. Beschreibung von Abläufen durch Algorithmen 3.3 Wiederholungsanweisungen.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd Foliendesign:
G. Gröger - Einführung in die Programmierung mit Java - 1. Semester - WS 02/ Übungsaufgabe vom Logische Ausdrücke 1.true & false | true 2.(10>2)
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.
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Graph_Algorithmen Gewichtete Graphen - Minimum Spanning Tree und shortest path aus Implementierungssicht Prof. Dr. Reiner Güttler.
JAVA lernen: Methoden.
Arrays in Java Ein Array ist eine Variable, die aus einer An-zahl von Elementen des gleichen Datentyps besteht, die aufeinanderfolgend im Speicher liegen.
Grundkurs Informatik mit Java
Schleifen mit der Turtle
Arrays in Java Ein Array ist eine Variable, die aus einer An-zahl von Elementen des gleichen Datentyps besteht, die aufeinanderfolgend im Speicher liegen.
Arrays in C Ein Array ist eine Variable, die aus einer Anzahl von Elementen des gleichen Datentyps besteht, die aufeinanderfolgend im Speicher liegen.
3. Die Datenstruktur Graph 3.3 Durchlaufen von Graphen
3. Die Datenstruktur Graph 3.2 Repräsentation von Graphen
 Präsentation transkript:

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3. Die Datenstruktur Graph 3.2 Repräsentation von Graphen Für die Darstellung eines Graphen eignet sich die sog. Adjazenzmatrix . Dabei handelt es sich um eine Tabelle, in der die Zeilen- und Spaltenüberschriften die Knotenbezeichner sind. In eine Zelle wird eine 1 eingetragen, wenn es zwischen den zugehörigen Knoten eine Kante gibt. Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Beispiel 1: Graph Adjazenzmatrix v1 v2 v3 v4 v5 v6 1 In eine Zelle wird eine 1 eingetragen, wenn es zwischen den zugehörigen Knoten eine Kante gibt. Die Adjazenzmatrix ist symmetrisch zur Hauptdiagonale. Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Beispiel 2: Graph Adjazenzmatrix v1 v2 v3 v4 v5 v6 1 Bei einem gerichteten Graphen muss die Adjazenzmatrix nicht mehr symmetrisch zur Hauptdiagonale sein. Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Beispiel 3: Graph Adjazenzmatrix v1 v2 v3 v4 v5 v6 10 20 30 40 Bei einem gewichteten Graphen trägt man die Kantenwerte ein. Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Implementierung einer Matrix in Java: Beispiel: (keine Adjazenzmatrix!) mat[0] = Feld mit 3 Elementen 1 2 3 4 5 6 mat[1] = Feld mit 3 Elementen int[][] mat; public Matrix(){ mat = new int [hoehe] [breite]; Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation Graphen Implementierung einer Matrix in Java: 1 2 3 4 5 6 public class Matrix{ int breite = 3; int hoehe = 2; int[][] mat; public Matrix(){ mat = new int [hoehe] [breite]; mat[0][0] = 1; mat[0][1] = 2; mat[0][2] = 3; mat[1][0] = 4; mat[1][1] = 5; mat[1][2] = 6; } Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation Graphen Ausgabe der Matrix mit verschachtelten Schleifen: 1 2 3 4 5 6 public void ausgabe(){ for(int j = 0; j< hoehe; j++){ for(int i = 0; i<breite; i++){ System.out.print( "mat[" + j + "] [" + i + "] = " + mat[j][i]+" "); } System.out.println(); Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Modellieren eines Graphen: Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Verwalten von Knoten und Kanten: Knotenfeld: knoten[0] Bezeichner "A" Knotennummer 0; knoten[1] Bezeichner "B" Knotennummer 1; A B C D 5 8 3 -1 Matrix: 0 für die Elemente der Hauptdiagonale; -1 steht für eine nicht vorhandene Kante, diese Zelle bleibt bei der Ausgabe leer. Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Einfügen eines neuen Knotens : Knotenfeld ergänzen; vorausgesetzt, der Knoten ist noch nicht vorhanden und die maximale Anzahl ist nicht überschritten A B C D E 5 8 3 -1 Matrix: 0 und -1 in der neuen Spalte und der neuen Zeile ergänzen. Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen

Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen 3.2 Repräsentation von Graphen Einfügen einer neuen Kante : A B C D E 5 8 3 -1 9 Matrix: Gewichtung eintragen Informatik 11 3. Datenstruktur Graph 3.2 Repräsentation von Graphen