notes/school/di-ma/20181113_1-dag.md

44 lines
1.1 KiB
Markdown
Raw Permalink Normal View History

2018-11-13 20:51:02 +01:00
---
title: Directed Acyclic Graph
date: 2018-11-13
---
Anwendung von gerichteten Graphen
* Knoten sund Aufgaben (z.b. Berechnungen)
* Kanten $(u,v)$ falls Aufgabe $u$ vor Aufgabe $v$ erledigt werden muss
**Beispiel**:
![Beispielgraph](20181113_1-problem.png)
Problem: Graph enthält einen Kreis => kann aufgaben nicht richtig anordnen und abarbeiten.
## Definition (DAG; Directed Acyclic Graph)
Ein gerichteter Graph $G = (V,E)$ heißt azyklisch (DAG) falls G keinen (gerichteten) Kreis enthält.
## Definition (Topologische Sortierung)
Sei $G = (V,E)$ ein gerichteter Graph. Eine Abbildung $f: V \to \{1, ... |V|\}$ mit der Eigenschaft, dass $f$ falls
$(u,v) \in E \Rightarrow f(u) < f(v)$ heißt **topologische Sortierung**.
## Bemerkungen
i) Topologische Sortierung entspricht für obige Anwendung einer (möglichen) Abarbeitungsreihenfolge
ii) Topologische Sortierung ist nicht eindeutig
iii) Später: Algorithmus um eine topologische Sortierung zu berechnen
**Beispiel**:
![Topologische Sortierung](20181113_1-topsort.png)
$$
f: \{A,B,C,D,E\} \to \{1,...,5\} \\
f(A) = 2 \\
f(B) = 1 \\
f(C) = 3 \\
f(D) = 4 \\
f(E) = 5
$$