Übung Grundbegriffe der Graphentheorie 1

Aus ProgrammingWiki
Archivierte Version vom 2015-10-27T18:28:16+00:00. Aktuelle Version

Inhaltsverzeichnis

Datenstrukturen für Graphen

  • Gegeben ist folgendes IGraph Interface mit einer Hilfsklasse Edge zur einfacheren Behandlung von Kanten

Aufgabe

  • Erstelle 2 Klassen die das IGraph Interface implementieren
    1. als Adjazenzmatrix
    2. als Adjazenzliste
  • Analysiere empirisch die Effizienz dieser beiden Datenstrukturen hinsichtlich
    1. Speicherbedarf
    2. Ermittlung des Knotengrades
    3. Prüfung auf Adjazenz zweier Knoten

Hilfestellung

  • Es wird ein Graph-Generator bereitgestellt, der das IGraph Interface benutzt um zufällige Graphen zu erzeugen
  • Mit generate werden dem Graph g eine entsprechende Menge von Knoten (cntVertex) und Kanten (cntEdges) zur Initialisierung übergeben
  • Die richtige Umsetzung der Speicherung wird mit den Funktionen getVertices und getEdges automatisch geprüft
  • Deine implementierte Klasse YourGraph könnte also folgendermaßen mit einem Zufallsgraphen getestet werden
Lösungen

Haha...! Noch nicht

Teil 2

Ghx8 ;_FFahrrad.png


KnotenKantenzuggeschlossener KantenzugWegeinfacher WegKreiseinfacher KreisZusammenhang
{A,B,C}???????
{M,G,H,M}???????
{L,M,G,H,M,L}???????
{Q,O,N,P,Q,M}???????
{G,E,D,G,F,D,G,E}???????
{L,H,G,E,D,G,M,L}???????