Fachhochschule Regensburg - oth

Werbung
Fachhochschule Regensburg
Graphen-Algorithmen: Topologischer Sort,
Projektplanung (CPM)
Test-Nr. 23_1
Algorithmen und Datenstrukturen
Name: ________________________
Aufgabensteller: Prof. Sauer
Vorname: _____________________
1. Aufgabe
1. Gegeben ist der folgende gerichtete, azylische Graph
2
10
1
4
9
6
8
3
7
5
Abb.:
Die Daten zu diesem Graphen sind in eine Datei aufzunehmen und einem Programm 1 zum Aufbau von
Adjazenzlisten und anschließender topologischer Sortierung bereitzustellen.
Zeige mit Hilfe eines vorgegebenen Programms2, wie
1. der Aufbau der Datei zu gestalten ist,
1
2
ueb23_1/pr53_2
ueb23_1/pr53_2/ pr34111.cpp
1
2. die Knoten und Kanten dieses Graphen in eine Adjazenzliste aufgenommen werden
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
3. die Startknoten für den topologischen Sort ermittelt werden
3. der toplogische Sort erfolgt
4. die Ausgabe in toplogisch, sortierter Folge der Knoten erfolgt
2. Aufgabe
Gegeben ist der folgende Netzplan
10
Erstelle
Software
20 Tage
Handbucherstellung
60 Tage
Teste Software
Korrigiere Fehler
20
40
15 Tage
25 Tage
Bestelle Hardware
50 Tage
Abb.: Projektbeschreibung mit Hilfe eines gerichteten, azyklischen Graphen
Die Daten zum Projekt sind in einer Datei mit folgendem Aufbau enthalten:
10
10
40
20
40
30
40
20
30
30
50
20
25
15
60
Bestelle Hardware
Erstelle Software
Teste Software
Korrigiere Fehler
Handbucherstellung
2
30
[10]
Zeige mit Hilfe eines vorgegebenen Programms3, wie
1. die Knoten und Kanten dieses Netzplans in eine Adjazenzliste aufgenommen werden
[1]
[2]
[3]
[4]
zaehler
ft, st
0
0
0
0
kette
Abb.: Speicherstruktur des Graphen nach dem Erzeugen der Adjazenzliste
2. mit welchem Programmbaustein des vorgegebenen Programms werden die vorgängerlosen
Elemente in einen Stapel aufgenommen.
3. Führe die Berechnung der frühest möglichen Termine mit Hilfe der unter 1. ermitteltelten
Datenstruktur aus. Trage die Termine in die unter 1. angegebene Darstellung ein.
4. Zur Berechnung der spätesten Termine benutze eine invertierte Adjazenzliste. Zeige in der
folgenden Darstellung die Gestalt der invertierten Adjazenzliste wie sie durch das vorgegebene
Progrann anhand der Eingabedaten ermittelt wird.
3
ueb23_1/pr53_2/ pr34125.cpp
3
[1]
[2]
[3]
[4]
zaehler
ft, st
kette
Abb.: Speicherstruktur des Graphen nach dem Erzeugen der Adjazenzliste
5. Führe die Berechnung der spätest zulässigen Termine mit Hilfe der unter 1. ermitteltelten
Datenstruktur aus. Trage die Termine in die unter 4. angegebene Darstellung ein.
6. Ermittle aus den vorliegenden frühesten und spätesten Termine den kritischen Pfad.
7. Zur Kontrolle bringe mit geeigneter Eingabedatei das vorgegebene Programm zum Ablauf
4
Fachhochschule Regensburg
Graphen-Algorithmen: Topologischer Sort,
Projektplanung
Test-Nr. 23_1
Algorithmen und Datenstrukturen
Name: ________________________
Aufgabensteller: Prof. Sauer
Vorname: _____________________
1. Aufgabe
1. Gegeben ist der folgende gerichtete, azylische Graph
2
10
1
4
9
6
8
3
7
5
Abb.:
Die Daten zu diesem Graphen sind in eine Datei aufzunehmen und einem Programm 4 zum Aufbau von
Adjazenzlisten und anschließender topologischer Sortierung bereitzustellen.
Zeige mit Hilfe eines vorgegebenen Programms5, wie
1. der Aufbau der Datei zu gestalten ist,
4
5
pr53_2
pr53_2, pr3411.cpp
5
2. die Knoten und Kanten dieses Graphen in eine Adjazenzliste aufgenommen werden
[1]
[2]
[3]
[4]
[5]
2
4
5
6
8
3
10
[6]
[7]
3
8
[8]
[9]
5
4
9
10
3. die Startknoten für den topologischen Sort ermittelt werden
3. der toplogische Sort erfolgt
4. die Ausgabe in toplogisch, sortierter Folge der Knoten erfolgt
7
9
1
2
4
6
3
5
8
10
2. Aufgabe
Gegeben ist der folgende Netzplan
10
Handbucherstellung
60 Tage
Teste Software
Korrigiere Fehler
20
40
15 Tage
25 Tage
Bestelle Hardware
Erstelle
Software
20 Tage
50 Tage
Abb.: Projektbeschreibung mit Hilfe eines gerichteten, azyklischen Graphen
Die Daten zum Projekt sind in einer Datei mit folgendem Aufbau enthalten:
10
10
40
20
40
30
40
20
30
30
50
20
25
15
60
Bestelle Hardware
Erstelle Software
Teste Software
Korrigiere Fehler
Handbucherstellung
Zeige mit Hilfe eines vorgegebenen Programms6, wie
6
pr53_2, pr34125.cpp
6
30
[10]
1. die Knoten und Kanten dieses Netzplans in eine Adjazenzliste aufgenommen werden
[1]
zaehler
ft, st
kette
0
0
0
[2]
[3]
[4]
1
3
1
0
0
0
0
0
3
15
0
nummer
dauer
4
20
3
60
nummer
dauer
3
2
50
25
Abb.: Speicherstruktur des Graphen nach dem Erzeugen der Adjazenzliste
2. mit welchem Programmbaustein des vorgegebenen Programms werden die vorgängerlosen
Elemente in einen Stapel aufgenommen.
3. Führe die Berechnung der frühest möglichen Termine mit Hilfe der unter 1. ermitteltelten
Datenstruktur aus. Trage die Termine in die unter 1. angegebene Darstellung ein.
4. Zur Berechnung der spätesten Termine benutze eine invertierte Adjazenzliste. Zeige in der
folgenden Darstellung die Gestalt der invertierten Adjazenzliste wie sie durch das vorgegebene
Progrann anhand der Eingabedaten ermittelt wird.
7
[1]
zaehler
ft, st
kette
[2]
2
0
1
80
0
[3]
[4]
0
45
80
2
80
0
80
20
80
0
0
nummer
4
4
1
dauer
25
60
20
nummer
2
15
dauer
nummer
1
dauer
50
Abb.: Speicherstruktur des Graphen nach dem Erzeugen der Adjazenzliste
5. Führe die Berechnung der spätest zulässigen Termine mit Hilfe der unter 1. ermitteltelten
Datenstruktur aus. Trage die Termine in die unter 4. angegebene Darstellung ein.
6. Ermittle aus den vorliegenden frühesten und spätesten Termine den kritischen Pfad.
7. Zur Kontrolle bringe mit geeigneter Eingabedatei das vorgegebene Programm zum Ablauf
8
Herunterladen