Algorithmen zur Visualisierung von Graphen

Größe: px
Ab Seite anzeigen:

Download "Algorithmen zur Visualisierung von Graphen"

Transkript

1 Algorithmen zur Visualisierung von Graphen Teile & Herrsche-Algorithmen: Bäume und serien-parallele Graphen Vorlesung im Wintersemester 202/203 Tamara Mchedlidze Martin Nöllenburg 23. Oktober 202

2 Algorithmen zum Zeichnen von Bäumen

3 Anwendbarkeit Gut bei induktiv oder rekursiv definierten Familien von Graphen Binärbaum mit Wurzel:. Zeichne linken Teilbaum 2. Zeichne rechten Teilbaum 3. füge zusammen + Wurzel tiefe(v): Abstand zur Wurzel Durchlaufreihenfolgen preorder inorder postorder

4 Algorithmus von Reingold und Tilford ( 8)

5 Algorithmus von Reingold und Tilford ( 8)

6 Algorithmus von Reingold und Tilford ( 8) 2 Phasen:. postorder (bottom-up): Konturen und x-offsets zum Vorgänger einsammeln 2. preorder (top-down): absolute Koordinaten ausrechnen

7 Algorithmus von Reingold und Tilford ( 8) 2 Phasen:. postorder (bottom-up): Konturen und x-offsets zum Vorgänger einsammeln 2. preorder (top-down): absolute Koordinaten ausrechnen Kontur: verkettete Liste von Knoten (-Koordinaten)

8 Algorithmus von Reingold und Tilford ( 8) Phase :. Bearbeite T l (v) und T r (v) 2. Laufe parallel linke Kontur von T r (v) und rechte Kontur von T l (v) ab 3. Bestimmt daraus d v, den horizontalen Minimalabstand von v l und v r 4. x-offset(v l ) = d v 2, x-offset(v r ) = d v 2 5. Baue linke Kontur von T v aus: v, linke Kontur von T l (v) und evtl. überhängendes Teilstück von linker Kontur von T r (v) 6. Rechte Kontur analog

9 Algorithmus von Reingold und Tilford ( 8) Phase 2. etze y-koordinate y(v) = tiefe(v) 2. etze x(v) = 0 für Wurzel und rekursiv die x-koordinate x(v l ) und x(v r ) der Nachfolger von v auf x(v)+ x-offset(x(v l )) bzw. x(v)+ x-offset(x(v r )) Zusammenfassung: Algorithmus berechnet Binärbaumlayout: geradliniges Gitterlayout tiefengeschichtet, kreuzungsfrei Knoten derselben Tiefe haben Abstand 2 Knoten sind über Nachfolgern zentriert linke/rechte Nachfolger sind strikt links/rechts identische Teilbäume gleich gezeichnet

10 Breitenminimierung von Binärbaumlayouts atz (upowit, Reingold) Die Breitenminimierung von Binärbaumlayouts ist NP-schwer Beweis: Reduktion von 3AT F = C C m, C i = y i, y i,2 y i,3, y i,j {x,..., x n, x,..., x n } Konstruiere Baum T (F ), der genau dann Layout mit Breite W 24 hat, wenn F erfüllbar ist. Baum T (x k ) für Var. x k : p p q 0 q 0 q k q k

11 Breitenminimierung von Binärbaumlayouts atz (upowit, Reingold) Die Breitenminimierung von Binärbaumlayouts ist NP-schwer Beweis: Reduktion von 3AT F = C C m, C i = y i, y i,2 y i,3, y i,j {x,..., x n, x,..., x n } Konstruiere Baum T (F ), der genau dann Layout mit Breite W 24 hat, wenn F erfüllbar ist. Baum T (x k ) für Var. x k : p q 0 q k p q 0 q k Baum T i,j u u l Höhe l = 3(i ) + j

12 Breitenminimierung von Binärbaumlayouts atz (upowit, Reingold) Die Breitenminimierung von Binärbaumlayouts ist NP-schwer Beweis: Reduktion von 3AT F = C C m, C i = y i, y i,2 y i,3, y i,j {x,..., x n, x,..., x n } Konstruiere Baum T (F ), der genau dann Layout mit Breite W 24 hat, wenn F erfüllbar ist. Baum T (x k ) für Var. x k : p q 0 q k p q 0 q k Baum T i,j u u l Höhe l = 3(i ) + j Literalbaum: p T (x k ) y i,j = x k b T i,j T (y i,j ) für y i,j = x k b T (x k ) 6 6 T i,j

13 Breitenminierung II Klauselbaum T (C i ): T (y i, ) T (y i,2 ) T (y i,3 ) Erfüllte Klausel hat Breite höchstens = 24 Beachte: alle Literalbäume haben volle Breite auf vierter Ebene von oben Nicht erfüllte Klausel: = 25

14 Breitenminierung II Klauselbaum T (C i ): Formelbaum T (F ) T (C ) b T (y i, ) T (y i,2 ) T (y i,3 ) Erfüllte Klausel hat Breite höchstens = 24 Beachte: alle Literalbäume haben volle Breite auf vierter Ebene von oben T (C 2 ) b T (C m ) Nicht erfüllte Klausel: = 25 Breite 24 F erfüllbar

15 HV-Bäume Idee: Zeichne Teilbäume in Rechtecke, Wurzel liegt in linker oberer Ecke Nachfolger liegen vertikal unterhalb bzw. horizontal rechts Induktionsanfang: Induktionsschritt: kombiniere Layouts horizontale Kombination (Fläche: 3 7) Berechne optimale Zeichnung mit dynamischer Programmierung vertikale Kombination (Fläche: 4 6)

16 Rechtslastige hv-layouts Rechtslastiges hv-layout: Wähle in jedem chritt Horizontal-Kombination Platziere größeren Teilbaum rechts Lemma Höhe eines rechtslastigen hv-layouts für Baum mit n Knoten ist höchstens log n. Beweis: Vertikale Kanten haben Länge w Knoten mit minimaler y-koordinate betrachte eindeutigen Pfad P zur Wurzel für jede vertikale Kante (u, v) auf P : T (v) > 2T (u) P enthält höchstens log n solcher Kanten Platzbedarf: O(n log n)

17 Radiale Baumlayouts

18 Beispiel Radiallayout

19 Beispiel Radiallayout

20 Beispiel Radiallayout

21 Beispiel Radiallayout

22 Beispiel Radiallayout

23 Beispiel Radiallayout

24 Beispiel Radiallayout

25 Beispiel Radiallayout

26 Verlassen des Kreisringsektors

27 Verlassen des Kreisringsektors τ ρ i ρ i+ cos τ = ρ i ρ i+

28 Verlassen des Kreisringsektors τ ρ i ρ i+ cos τ = ρ i ρ i+

29 erien-parallele Graphen

30 erien-parallele Graphen Graph G heißt serien-parallel, wenn er aus genau zwei Knoten (uelle s, enke t sowie der Kante (s, t) besteht oder aus zwei serien-parallelen Graphen G, G 2 mit uellen s, s 2 und enken t, t 2 durch eine der folgenden Kombinationen hervorgeht serielle Komposition: Identifiziere t und s 2, s neue uelle, T 2 neue enke t 2 parallele Komposition: Identifiziere s, s 2 als neue uelle Identifiziere t, t 2 als neue enke t = t 2 t s t = s 2 s s = s 2

31 erien-parallele Graphen II Lemma erien-parallele Graphen sind azyklisch und planar. Beschreibung des rekursiven Aufbaus durch binären Baum: Blätter sind Kanten (-Knoten) Innere Knoten sind - oder P-Knoten (vgl. PR-Baum)

32 P-Graphen: Dekompositionsbaum

33 P-Graphen: Dekompositionsbaum P

34 P-Graphen: Dekompositionsbaum P P

35 P-Graphen: Dekompositionsbaum P P

36 P-Graphen: Dekompositionsbaum P P

37 P-Graphen: Dekompositionsbaum P P

38 P-Graphen: Dekompositionsbaum P P

39 P-Graphen: Dekompositionsbaum P P P

40 P-Graphen: Dekompositionsbaum P P P

41 P-Graphen: Dekompositionsbaum P P P

42 P-Graphen in Anwendungen Ablaufdiagramme PERT-Diagramme (Program Evaluation and Review Technique) Außerdem: Linearzeitalgorithmen für sonst NP-vollständige Probleme (z.b. Maximum Independent et)

43 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ).

44 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t 0 t n G n G 0 s 0 s n G n+ s n+

45 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t 0 t n tn G n G n s n G 0 s 0 s n G n+ s n+ sn

46 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ t 0 t n tn G n G n s n G 0 s 0 s n G n+ s n+ sn

47 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ t 0 t n tn G n G n s n s 0 s n s n+ s n+ G 0 G n+ sn

48 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ t 0 t n tn G n G n s n s 0 s n s n+ s n+ G 0 G n+ sn

49 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ t 0 t n tn G n G n s n s 0 s n s n+ s n+ G 0 G n+ sn

50 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ t 0 t n tn G n G n s n s 0 s n s n+ s n+ G 0 G n+ sn

51 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ 2 t 0 t n tn G n G n s n s 0 s n s n+ s n+ Π G 0 G n+ sn

52 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ 2 t 0 t n tn G n G n s n s 0 s n s n+ s n+ Π G 0 G n+ sn

53 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ 2 t 0 t n tn G n G n s n s 0 s n s n+ s n+ Π G 0 G n+ sn

54 Untere chranke für die Fläche atz Jedes kreuzungsfreie Aufwärtslayout für geordnete einfache serien-parallele Graphen mit n Knoten benbötigt im worst case ein Gitter der Größe Ω(2 n ). Beweis: t n+ t n+ 2 t 0 t n tn G n G n s n s 0 s n s n+ s n+ Π G 0 G n+ sn

55 Linkslastige Ordnungen Ordnung heißt linkslastig, wenn -Knoten nur als rechte Nachfolger von P-Knoten vorkommen. atz Wenn G serien-parallel, einfach und linkslastig geordnet, so besitzt G Zeichnung der Größe O(n 2 ). Komponenten des Dekompositionsbaums: t Layout von G passt in rechtwinkliges, gleichschenkliges Dreieck mit vertikaler Basis, chenkel nach links. uelle in unterer Ecke, enke in oberer Ecke, linke Ecke frei rechtester Nachbar von s t (t s) liegt unterhalb (oberhalb) der Mitte v v v Nachbar der uelle (enke) kein Knoten liegt im Parallelogramm von v und s (t). s

56 Konstruktion -Knoten (Induktionsanfang): s t

57 Konstruktion -Knoten (Induktionsanfang): s t t (G 2 ) -Knoten (serielle Komposition): (G ) s

58 Konstruktion -Knoten (Induktionsanfang): s t t (G 2 ) -Knoten (serielle Komposition): (G ) P-Knoten (parallele Komposition): t (G 2 ) (G ) s s

59 Konstruktion -Knoten (Induktionsanfang): s t t (G 2 ) -Knoten (serielle Komposition): (G ) P-Knoten (parallele Komposition): t (G 2 ) (G ) s Eigenschaften: kreuzungsfrei und aufwärts höchstens quadratische Fläche s

60 Darstellung von ymmetrien in Graphen aus Hong, Eades, Lee 00

61 Darstellung von ymmetrien in Graphen Definition: Automorphismen eines DAG Ein Automorphismus eines DAG G = (V, E) ist eine Knotenpermutation π : V V, die Adjazenzen respektiert und alle Kantenrichtungen erhält oder alle Kantenrichtungen umdreht: (u, v) E (π(u), π(v)) E oder (u, v) E (π(v), π(u)) E. Die Automorphismen von G bilden mit der Hintereinanderausführung eine Gruppe. die Automorphismengruppe eines Graphen zu bestimmen ist GIvollständig für Graphen mit beschränktem Maximalgrad und planare Graphen geht das in Polynomialzeit

62 Darstellung von ymmetrien in Graphen Definition: Automorphismen eines DAG Ein Automorphismus eines DAG G = (V, E) ist eine Knotenpermutation π : V V, die Adjazenzen respektiert und alle Kantenrichtungen erhält oder alle Kantenrichtungen umdreht: (u, v) E (π(u), π(v)) E oder (u, v) E (π(v), π(u)) E. Die Automorphismen von G bilden mit der Hintereinanderausführung eine Gruppe. die Automorphismengruppe eines Graphen zu bestimmen ist GIvollständig für Graphen mit beschränktem Maximalgrad und planare Graphen geht das in Polynomialzeit

63 Darstellbare ymmetrien ein Automorphismus π eines Graphen ist darstellbar, wenn es eine Zeichnung gibt, die eine ymmetrie enthält, welche π induziert Lin charakterisiert darstellbare Automorphismen [Lin 92] Darstellbare Automorphismen eines Graphen zu finden ist NPschwer für planare Graphen ist das wieder in Polynomialzeit möglich

64 Darstellbare ymmetrien ein Automorphismus π eines Graphen ist darstellbar, wenn es eine Zeichnung gibt, die eine ymmetrie enthält, welche π induziert Lin charakterisiert darstellbare Automorphismen [Lin 92] Darstellbare Automorphismen eines Graphen zu finden ist NPschwer für planare Graphen ist das wieder in Polynomialzeit möglich stellt dar, aber nicht 2 3 stellt 2 3 dar, aber nicht , nicht darstellbar

65 ymmetrien in P-Graphen v π(v) u π(u) π vert

66 ymmetrien in P-Graphen π(u) v π(v) π(v) v u π(u) u π vert π hor

67 ymmetrien in P-Graphen π(u) π(u) v π(v) π(v) v v π(v) u π(u) u u π vert π hor π rot

68 ymmetrien in P-Graphen π(u) π(u) v π(v) π(v) v v π(v) u π(u) u u π vert π hor π rot {π vert, π hor, π rot }

69 ymmetrien in P-Zeichnungen atz (Hong, Eades, Lee 00) Die in einem kreuzungsfreien Aufwärtslayout eines P- Graphen darstellbaren ymmetrien sind entweder {id} {id, π} mit π {π vert, π hor, π rot } {id, π vert, π hor, π rot }.

70 Knotenkodierung im Dekompositionsbaum P P P

71 Knotenkodierung im Dekompositionsbaum P P P

72 Knotenkodierung im Dekompositionsbaum P P

73 Knotenkodierung im Dekompositionsbaum Kanonische Kodierung etze C(G) = 0 für alle -Knoten G. Für jede Tiefe t = max G tiefe(g),..., 0 Für jeden - oder P-Knoten G der Tiefe t mit Nachfolgern G,..., G k setze C(G) = c(g ),..., c(g k ) und sortiere C(G) nichtabsteigend, falls G ein P-Knoten ist. ortiere die Menge der Tupel aller Knoten der Tiefe t lexikographisch. Für jede Komponente G der Tiefe t setze ihre Kodierung auf c, falls ihr Tupel in der sortierten Tupelfolge als c-tes verschiedenes Tupel auftritt.

74 Knotenkodierung im Dekompositionsbaum Kanonische Kodierung etze C(G) = 0 für alle -Knoten G. Für jede Tiefe t = max G tiefe(g),..., 0 Für jeden - oder P-Knoten G der Tiefe t mit Nachfolgern G,..., G k setze C(G) = c(g ),..., c(g k ) und sortiere C(G) nichtabsteigend, falls G ein P-Knoten ist. ortiere die Menge der Tupel aller Knoten der Tiefe t lexikographisch. Für jede Komponente G der Tiefe t setze ihre Kodierung auf c, falls ihr Tupel in der sortierten Tupelfolge als c-tes verschiedenes Tupel auftritt.

75 Knotenkodierung im Dekompositionsbaum Kanonische Kodierung etze C(G) = 0 für alle -Knoten G. Für jede Tiefe t = max G tiefe(g),..., 0 Für jeden - oder P-Knoten G der Tiefe t mit Nachfolgern G,..., G k setze C(G) = c(g ),..., c(g k ) und sortiere C(G) nichtabsteigend, falls G ein P-Knoten ist. ortiere die Menge der Tupel aller Knoten der Tiefe t lexikographisch. Für jede Komponente G der Tiefe t setze ihre Kodierung auf c, falls ihr Tupel in der sortierten Tupelfolge als c-tes verschiedenes Tupel auftritt.

76 Knotenkodierung im Dekompositionsbaum Kanonische Kodierung etze C(G) = 0 für alle -Knoten G. Für jede Tiefe t = max G tiefe(g),..., 0 Für jeden - oder P-Knoten G der Tiefe t mit Nachfolgern G,..., G k setze C(G) = c(g ),..., c(g k ) und sortiere C(G) nichtabsteigend, falls G ein P-Knoten ist. ortiere die Menge der Tupel aller Knoten der Tiefe t lexikographisch. Für jede Komponente G der Tiefe t setze ihre Kodierung auf c, falls ihr Tupel in der sortierten Tupelfolge als c-tes verschiedenes Tupel auftritt.

77 Knotenkodierung im Dekompositionsbaum Kanonische Kodierung etze C(G) = 0 für alle -Knoten G. Für jede Tiefe t = max G tiefe(g),..., 0 Für jeden - oder P-Knoten G der Tiefe t mit Nachfolgern G,..., G k setze C(G) = c(g ),..., c(g k ) und sortiere C(G) nichtabsteigend, falls G ein P-Knoten ist. ortiere die Menge der Tupel aller Knoten der Tiefe t lexikographisch. Für jede Komponente G der Tiefe t setze ihre Kodierung auf c, falls ihr Tupel in der sortierten Tupelfolge als c-tes verschiedenes Tupel auftritt. Zwei Knoten u und v gleicher Tiefe sind genau dann isomorph, wenn sie den gleichen Code haben.

78 Knotenkodierung im Dekompositionsbaum P P

79 Knotenkodierung im Dekompositionsbaum P P

80 Knotenkodierung im Dekompositionsbaum P P , 0,

81 Knotenkodierung im Dekompositionsbaum P P , 0,

82 Knotenkodierung im Dekompositionsbaum P , P, 0,

83 Knotenkodierung im Dekompositionsbaum P , P, 2 0,

84 Knotenkodierung im Dekompositionsbaum P,,,, , P, 2 0,

85 Knotenkodierung im Dekompositionsbaum P,,,, , P, 2 0,

86 Knotenkodierung im Dekompositionsbaum P,, 2,,,, , P, 2 0,

87 Vertikale ymmetrien atz (Hong, Eades, Lee 00) Gegeben sei der kanonische Dekompositionsbaum eines serienparallelen Graphen. Es sei G eine Komponente, die durch Komposition der Komponenten G,..., G k entstehe. Ist G ein -Knoten, dann ist G vertikal symmetrisch, wenn alle G,..., G k vertikal symmetrisch sind. Ist G ein P-Knoten, so betrachten wir die Klassen G j = {G i : i k, c(g i ) = j}, j =,..., k, von isomorphen Teilgraphen. G j gerade j vertikal symmetrisch G j ungerade für genau ein j G vertikal symmetrisch g.d.w. Graphen in G j vertikal symmetrisch G i, G j ungerade für i j G nicht vertikal symmetrisch

88 Vertikale ymmetrien atz (Hong, Eades, Lee 00) Gegeben sei der kanonische Dekompositionsbaum eines serienparallelen Graphen. Es sei G eine Komponente, die durch Komposition der Komponenten G,..., G k entstehe. Ist G ein -Knoten, dann ist G vertikal symmetrisch, wenn alle G,..., G k vertikal symmetrisch sind. Ist G ein P-Knoten, so betrachten wir die Klassen G j = {G i : i k, c(g i ) = j}, j =,..., k, von isomorphen Teilgraphen. G j gerade j vertikal symmetrisch G j ungerade für genau ein j G vertikal symmetrisch g.d.w. Graphen in G j vertikal symmetrisch G i, G j ungerade für i j G nicht vertikal symmetrisch

89 Vertikale ymmetrien atz (Hong, Eades, Lee 00) Gegeben sei der kanonische Dekompositionsbaum eines serienparallelen Graphen. Es sei G eine Komponente, die durch Komposition der Komponenten G,..., G k entstehe. Ist G ein -Knoten, dann ist G vertikal symmetrisch, wenn alle G,..., G k vertikal symmetrisch sind. Ist G ein P-Knoten, so betrachten wir die Klassen G j = {G i : i k, c(g i ) = j}, j =,..., k, von isomorphen Teilgraphen. G j gerade j vertikal symmetrisch G j ungerade für genau ein j G vertikal symmetrisch g.d.w. Graphen in G j vertikal symmetrisch G i, G j ungerade für i j G nicht vertikal symmetrisch

90 Vertikale ymmetrien atz (Hong, Eades, Lee 00) Gegeben sei der kanonische Dekompositionsbaum eines serienparallelen Graphen. Es sei G eine Komponente, die durch Komposition der Komponenten G,..., G k entstehe. Ist G ein -Knoten, dann ist G vertikal symmetrisch, wenn alle G,..., G k vertikal symmetrisch sind. Ist G ein P-Knoten, so betrachten wir die Klassen G j = {G i : i k, c(g i ) = j}, j =,..., k, von isomorphen Teilgraphen. G j gerade j vertikal symmetrisch G j ungerade für genau ein j G vertikal symmetrisch g.d.w. Graphen in G j vertikal symmetrisch G i, G j ungerade für i j G nicht vertikal symmetrisch

91 Beweisidee vertikale ymmetrie -Knoten

92 Beweisidee vertikale ymmetrie P-Knoten, alle Klassen gerade Anzahl -Knoten

93 Beweisidee vertikale ymmetrie P-Knoten, alle Klassen gerade Anzahl -Knoten alle Knoten v-symm. P-Knoten, eine Klasse ungerade Anzahl & v-symm.

94 ymmetrien zeichnen aus Hong, Eades, Lee 00

95 ymmetrien zeichnen aus Hong, Eades, Lee 00

96 ymmetrien zeichnen aus Hong, Eades, Lee 00

Visualisierung von Graphen

Visualisierung von Graphen 1 Visualisierung von Graphen Teile-und-Herrsche-Algorithmen: Bäume und serienparallele Graphen 3. Vorlesung Sommersemester 2013 (basierend auf Folien von Martin Nöllenburg und Robert Görke, KIT) 2 Ankündigung

Mehr

Algorithmen zur Visualisierung von Graphen

Algorithmen zur Visualisierung von Graphen Algorithmen zur Visualisierung von Graphen Teile & Herrsche-Algorithmen: Bäume und serienparallele Graphen Vorlesung im Wintersemester 200/20 Robert Görke.0.20 Robert Görke Algorithmen zur Visualisierung

Mehr

Automatisches Zeichnen von Graphen

Automatisches Zeichnen von Graphen Automatisches Zeichnen von Graphen Kap. 2: Zeichnen von Bäumen Prof. Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering LS11 Universität Dortmund 2./3./4. VO WS07/08 16./22./23. Oktober 2007 1 Literatur

Mehr

Kapitel 2: Zeichnen von Bäumen Beispiel: Baumzeichnung

Kapitel 2: Zeichnen von Bäumen Beispiel: Baumzeichnung Automatisches Zeichnen von Graphen Kap. : Zeichnen von Bäumen Prof. Dr. Petra Mutzel Literatur für diese VO Originalartikel: E.M. Reingold und J.S. Tilford: Tidier Drawings of Trees, IEEE Transactions

Mehr

Datenstrukturen. einfach verkettete Liste

Datenstrukturen. einfach verkettete Liste einfach verkettete Liste speichert Daten in einer linearen Liste, in der jedes Element auf das nächste Element zeigt Jeder Knoten der Liste enthält beliebige Daten und einen Zeiger auf den nächsten Knoten

Mehr

Visualisierung von Graphen

Visualisierung von Graphen 1 Visualisierung von Graphen Geradlinige Zeichnungen planarer Graphen 6. Vorlesung Sommersemester 2013 (basierend auf Folien von Marcus Krug und Tamara Mchedlidze, KIT) 2 Planare Graphen: Charakterisierung,

Mehr

Wiederholung. Datenstrukturen und. Bäume. Wiederholung. Suchen in linearen Feldern VO

Wiederholung. Datenstrukturen und. Bäume. Wiederholung. Suchen in linearen Feldern VO Wiederholung Datenstrukturen und Algorithmen VO 708.031 Suchen in linearen Feldern Ohne Vorsortierung: Sequentielle Suche Speicherung nach Zugriffswahrscheinlichkeit Selbstanordnende Felder Mit Vorsortierung:

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume)

Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume) WS 2016/17 Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_16

Mehr

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone

Was bisher geschah. 1. Zerlegung in monotone Polygone 2. Triangulierung der monotonen Teilpolygone Was bisher geschah Motivation, Beispiele geometrische Objekte im R 2 : Punkt, Gerade, Halbebene, Strecke, Polygon, ebene Zerlegung in Regionen (planare Graphen) maschinelle Repräsentation geometrischer

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws1314

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen

Mehr

Isomorphie von Bäumen

Isomorphie von Bäumen Isomorphie von Bäumen Alexandra Weinberger 23. Dezember 2011 Inhaltsverzeichnis 1 Einige Grundlagen und Definitionen 2 1.1 Bäume................................. 3 1.2 Isomorphie..............................

Mehr

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

Mehr

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1} 1. Berechne für jeden Knoten i in BFS-Art eine Liste S i von von i aus erreichbaren Knoten, so dass (i) oder (ii) gilt: (i) S i < n 2 + 1 und Si enthält alle von i aus erreichbaren Knoten (ii) S i = n

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes

Mehr

7. Sortieren Lernziele. 7. Sortieren

7. Sortieren Lernziele. 7. Sortieren 7. Sortieren Lernziele 7. Sortieren Lernziele: Die wichtigsten Sortierverfahren kennen und einsetzen können, Aufwand und weitere Eigenschaften der Sortierverfahren kennen, das Problemlösungsparadigma Teile-und-herrsche

Mehr

= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2

= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2 1 Graphen Definition: Ein Graph G = (V,E) setzt sich aus einer Knotenmenge V und einer (Multi)Menge E V V, die als Kantenmenge bezeichnet wird, zusammen. Falls E symmetrisch ist, d.h.( u,v V)[(u,v) E (v,u)

Mehr

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008 Technische Universität München Fakultät für Informatik Lehrstuhl für Informatik 15 Computergraphik & Visualisierung Prof. Dr. Rüdiger Westermann Dr. Werner Meixner Wintersemester 2007/08 Lösungsblatt 9

Mehr

Zeichnen von Graphen. graph drawing

Zeichnen von Graphen. graph drawing Zeichnen von Graphen graph drawing WS 2006 / 2007 Gruppe: D_rot_Ala0607 Christian Becker 11042315 Eugen Plischke 11042351 Vadim Filippov 11042026 Gegeben sei ein Graph G = (V; E) Problemstellung V E =

Mehr

Lösungen zu Kapitel 5

Lösungen zu Kapitel 5 Lösungen zu Kapitel 5 Lösung zu Aufgabe : (a) Es gibt derartige Graphen: (b) Offensichtlich besitzen 0 der Graphen einen solchen Teilgraphen. Lösung zu Aufgabe : Es sei G = (V, E) zusammenhängend und V

Mehr

Flussmethoden: orthogonales Graphenzeichnen

Flussmethoden: orthogonales Graphenzeichnen Algorithmen zur Visualisierung von Graphen INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Martin Nöllenburg 04.2.203 Orthogonale Gitterzeichnungen 2 Orthogonale Gitterzeichnungen

Mehr

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS)

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) 5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Datenstruktur BDD 2 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer:

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 4: Suchstrategien Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 14. April 2017 HALBORDNUNG TOPOLOGISCHE ORDNUNG TOPOLOGISCHES

Mehr

Polygontriangulierung

Polygontriangulierung Vorlesung Algorithmische Geometrie Polygone triangulieren LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 26.04.2011 Das Kunstgalerie-Problem

Mehr

Zeichnen von Bäumen Lina Wolf

Zeichnen von Bäumen Lina Wolf Zeichnen von Bäumen Lina Wolf 1. Was ist ein Baum? Ein Baum ist ein zusammenhängender, azyklischer Graph. In der Regel hat ein Baum T einen Knoten r T, der Wurzel genannt wird. Man geht davon aus, das

Mehr

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Punktlokalisierung. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 22.05.2012 Nachtrag: Dynamische Bereichsabfragen Letzte Woche: kd-trees und Range-Trees

Mehr

Relationen und DAGs, starker Zusammenhang

Relationen und DAGs, starker Zusammenhang Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind

Mehr

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Aufgabe 1. / 16 P Instruktionen: 1) In dieser Aufgabe sollen Sie nur die Ergebnisse angeben. Diese können Sie direkt bei den Aufgaben notieren. 2) Sofern

Mehr

Algorithmen zur Visualisierung von Graphen

Algorithmen zur Visualisierung von Graphen Algorithmen zur Visualisierung von Graphen Kombinatorische Optimierung mittels Flussmethoden II Vorlesung im Wintersemester 2011/2012 10.11.2011 Orthogonale Zeichnungen II letztes Mal: Satz G Maxgrad-4-Graph

Mehr

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.07.2012 Objekttypen in Bereichsabfragen y0 y0 y x x0 Bisher

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) WS 2015/16 Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15

Mehr

Lösungen zur Vorlesung Berechenbarkeit und Komplexität

Lösungen zur Vorlesung Berechenbarkeit und Komplexität Lehrstuhl für Informatik 1 WS 009/10 Prof. Dr. Berthold Vöcking 0.0.010 Alexander Skopalik Thomas Kesselheim Lösungen zur Vorlesung Berechenbarkeit und Komplexität. Zulassungsklausur Aufgabe 1: (a) Worin

Mehr

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können. 6. Bäume Lernziele 6. Bäume Lernziele: Definition und Eigenschaften binärer Bäume kennen, Traversierungsalgorithmen für binäre Bäume implementieren können, die Bedeutung von Suchbäumen für die effiziente

Mehr

Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle. zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"):

Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle. zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung Algorithmische Geometrie): Grundlagen zur Delaunay-Triangulierung und zur konvexen Hülle zum Begriff des Voronoi-Diagramms (vgl. auch Vorlesung "Algorithmische Geometrie"): 1 Erzeugung des Voronoi-Diagramms (siehe Vorlesung "Algorithmische

Mehr

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Bereichsabfragen II. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 17.07.2012 Objekttypen in Bereichsabfragen y0 y x x0 Bisher

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements und Dualität von Punkten und Geraden Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare

Mehr

Algorithmen und Datenstrukturen 1

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen 1 8. Vorlesung Martin Middendorf und Peter F. Stadler Universität Leipzig Institut für Informatik middendorf@informatik.uni-leipzig.de studla@bioinf.uni-leipzig.de Gefädelte

Mehr

Der Algorithmus von Walker und seine Verbesserung

Der Algorithmus von Walker und seine Verbesserung Universität Konstanz WS 2004/2005 Fachbereich Informatik Zeichnen von Graphen Prof. Dr. Ulrik Brandes Der Algorithmus von Walker und seine Verbesserung basierend auf einer Arbeit von Christoph Buchheim,

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung Punktlokalisation 1. Trapez-Zerlegungen 2. Eine Suchstruktur 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung 4. Analyse Punktlokalisation Einteilung in Streifen Anfragezeit:

Mehr

Für die Anzahl der Kanten in einem vollständigen Graphen (und damit für die maximale Anzahl von Kanten in einem einfachen Graphen) gilt:

Für die Anzahl der Kanten in einem vollständigen Graphen (und damit für die maximale Anzahl von Kanten in einem einfachen Graphen) gilt: Der K 4 lässt sich auch kreuzungsfrei zeichnen: Für die Anzahl der Kanten in einem vollständigen Graphen (und damit für die maximale Anzahl von Kanten in einem einfachen Graphen) gilt: ( ) n n (n 1) E

Mehr

Geradenarrangements und Dualität von Punkten und Geraden

Geradenarrangements und Dualität von Punkten und Geraden Vorlesung Algorithmische Geometrie von Punkten und Geraden INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 12.06.2012 Dualitätsabbildung Bisher haben wir Dualität für planare

Mehr

Idee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10

Idee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10 Binäre Bäume Bäume gehören zu den wichtigsten Datenstrukturen in der Informatik. Sie repräsentieren z.b. die Struktur eines arithmetischen Terms oder die Struktur eines Buchs. Bäume beschreiben Organisationshierarchien

Mehr

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2017/18. Pro f. Dr. Sán do r Fe k e te

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2017/18. Pro f. Dr. Sán do r Fe k e te Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2017/18 Pro f. Dr. Sán do r Fe k e te 1 Binärer Suchbaum Außerdem wichtig: Struktur der Schlüsselwerte! 2 Ordnungsstruktur Linker

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 18. März

Mehr

3. Binäre Suchbäume. 3.1 Natürliche binäre Suchbäume. EADS 3.1 Natürliche binäre Suchbäume 78/598 ľernst W. Mayr

3. Binäre Suchbäume. 3.1 Natürliche binäre Suchbäume. EADS 3.1 Natürliche binäre Suchbäume 78/598 ľernst W. Mayr 3. Binäre Suchbäume 3.1 Natürliche binäre Suchbäume Definition 18 Ein natürlicher binärer Suchbaum über einem durch total geordneten Universum U ist ein als interner Suchbaum organisierter Binärbaum (also:

Mehr

Informatik II Prüfungsvorbereitungskurs

Informatik II Prüfungsvorbereitungskurs Informatik II Prüfungsvorbereitungskurs Tag 4, 9.6.2017 Giuseppe Accaputo g@accaputo.ch 1 Aufbau des PVK Tag 1: Java Teil 1 Tag 2: Java Teil 2 Tag 3: Algorithmen & Komplexität Tag 4: Dynamische Datenstrukturen,

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

8 Diskrete Optimierung

8 Diskrete Optimierung 8 Diskrete Optimierung Definition 8.1. Ein Graph G ist ein Paar (V (G), E(G)) besteh aus einer lichen Menge V (G) von Knoten (oder Ecken) und einer Menge E(G) ( ) V (G) 2 von Kanten. Die Ordnung n(g) von

Mehr

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015 Datenstrukturen und Algorithmen Vorlesung 8: (K6) 1 Joost-Pieter Katoen Lehrstuhl für Informatik Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 7. Mai 015 3 Joost-Pieter

Mehr

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert Inhalt Einführung 1. Arrays 1. Array unsortiert 2. Array sortiert 3. Heap 2. Listen 1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert 3. Bäume

Mehr

Kanonische Ordnungen und die Mondshein-Sequenz

Kanonische Ordnungen und die Mondshein-Sequenz Kanonische Ordnungen und die Mondshein-Sequenz a.k.a. (2,)-Order 2 8 0 9 5 7 6 2 Überblick Geradlinige Zeichnungen Kanonische Ordnungen + Shift-Algorithmus Erweiterungen durch Ohrendekompositionen Mondshein-Sequenz

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Parallele Algorithmen in der Bildverarbeitung

Parallele Algorithmen in der Bildverarbeitung Seminar über Algorithmen - SoSe 2009 Parallele Algorithmen in der Bildverarbeitung von Christopher Keiner 1 Allgemeines 1.1 Einleitung Parallele Algorithmen gewinnen immer stärker an Bedeutung. Es existieren

Mehr

Lineare Programmierung

Lineare Programmierung Übung Algorithmische Geometrie Lineare Programmierung LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann 14.05.2014 Übersicht Übungsblatt 4 Lineares

Mehr

Diskrete Strukturen Wiederholungsklausur

Diskrete Strukturen Wiederholungsklausur Technische Universität München (I7) Winter 2013/14 Prof. J. Esparza / Dr. M. Luttenberger LÖSUNG Diskrete Strukturen Wiederholungsklausur Beachten Sie: Soweit nicht anders angegeben, ist stets eine Begründung

Mehr

Gierige Algorithmen Interval Scheduling

Gierige Algorithmen Interval Scheduling Gierige Algorithmen Interval Scheduling IntervalScheduling(s,f). n length[s] 2. A {} 3. j 4. for i 2 to n do 5. if s[i] f[j] then 6. A A {i} 7. j i 8. return A Gierige Algorithmen Interval Scheduling Beweisidee:

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

Algorithmen und Datenstrukturen 2-1. Seminar -

Algorithmen und Datenstrukturen 2-1. Seminar - Algorithmen und Datenstrukturen 2-1. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 1. Übungsserie: 3 Aufgaben, insgesamt 30 28 Punkte A1 Spannbäume (10 8

Mehr

Algorithmen und Datenstrukturen Tafelübung 14. Jens Wetzl 8. Februar 2012

Algorithmen und Datenstrukturen Tafelübung 14. Jens Wetzl 8. Februar 2012 Algorithmen und Datenstrukturen Tafelübung 14 Jens Wetzl 8. Februar 2012 Folien Keine Garantie für Vollständigkeit und/oder Richtigkeit Keine offizielle Informationsquelle LS2-Webseite Abrufbar unter:

Mehr

Clausthal C G C C G C. Informatik II Bäume. G. Zachmann Clausthal University, Germany Beispiele. Stammbaum.

Clausthal C G C C G C. Informatik II Bäume. G. Zachmann Clausthal University, Germany Beispiele. Stammbaum. lausthal Informatik II Bäume. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Beispiele Stammbaum. Zachmann Informatik - SS 0 Bäume Stammbaum Parse tree, Rekursionsbaum Unix file hierarchy

Mehr

Graphen und Bäume. A.1 Graphen

Graphen und Bäume. A.1 Graphen Algorithmen und Datenstrukturen 96 A Graphen und Bäume A.1 Graphen Ein gerichteter Graph (auch Digraph) G ist ein Paar (V, E), wobei V eine endliche Menge und E eine Relation auf V ist, d.h. E V V. V heißt

Mehr

Teil 1: Suchen. Ausgeglichene Bäume B-Bäume Digitale Suchbäume. M.O.Franz, Oktober 2007 Algorithmen und Datenstrukturen - Binärbäume 1-1

Teil 1: Suchen. Ausgeglichene Bäume B-Bäume Digitale Suchbäume. M.O.Franz, Oktober 2007 Algorithmen und Datenstrukturen - Binärbäume 1-1 Teil : Suchen Problemstellung Elementare Suchverfahren Hashverfahren Binäre Suchbäume (Wiederholung aus Prog 2) Bäume: Begriffe, Eigenschaften und Traversierung Binäre Suchbäume Gefädelte Suchbäume Ausgeglichene

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen

Vorlesung Informatik 2 Algorithmen und Datenstrukturen Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 Bäume: Grundlagen und natürliche Suchbäume) Prof. Dr. Susanne Albers Bäume (1) Bäume sind verallgemeinerte Listen (jedes Knoten-Element kann mehr

Mehr

Punkt-in-Polygon-Suche Übersicht

Punkt-in-Polygon-Suche Übersicht Folie 1 von 43 Punkt-in-Polygon-Suche Übersicht! Praxisbeispiel/Problemstellung! Zählen von Schnittpunkten " Schnitt einer Halbgerade mit der Masche " Aufwandsbetrachtung! Streifenkarte " Vorgehen und

Mehr

Geometrische Algorithmen Punkt-in-Polygon-Suche. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Punkt-in-Polygon-Suche

Geometrische Algorithmen Punkt-in-Polygon-Suche. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Punkt-in-Polygon-Suche Folie 1 von 51 Geometrische Algorithmen Punkt-in-Polygon-Suche Folie 2 von 51 Punkt-in-Polygon-Suche Übersicht Praxisbeispiel/Problemstellung Zählen von Schnittpunkten Schnitt einer Halbgerade mit der

Mehr

Delaunay-Triangulierungen

Delaunay-Triangulierungen Vorlesung Algorithmische Geometrie Delaunay-Triangulierungen INSTITUT FU R THEORETISCHE INFORMATIK FAKULTA T FU R INFORMATIK Martin No llenburg 10.06.2014 Grafik c Rodrigo I. Silveira 1 Dr. Martin No llenburg

Mehr

Programmiertechnik II

Programmiertechnik II Graph-Algorithmen Anwendungsgebiete "Verbundene Dinge" oft Teilproblem/Abstraktion einer Aufgabenstellung Karten: Wie ist der kürzeste Weg von Sanssouci nach Kunnersdorf? Hypertext: Welche Seiten sind

Mehr

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss.

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. (a, b)-bäume / 1. Szenario: Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. Konsequenz: Kommunikation zwischen Hauptspeicher und Festplatte - geschieht nicht Byte für Byte,

Mehr

Triangulierungen von Punktmengen und Polyedern

Triangulierungen von Punktmengen und Polyedern Triangulierungen von Punktmengen und Polyedern Vorlesung im Sommersemester 2 Technische Universität Berlin Jörg Rambau 2.4.2 Motivation und Beispiele Wir wollen hier den Begriff der Triangulierungen von

Mehr

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:

Mehr

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =.

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =. 2. Der Blum-Floyd-Pratt-Rivest-Tarjan Selektions-Algorithmus Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n

Mehr

Programmiertechnik II

Programmiertechnik II Graph-Algorithmen Anwendungsgebiete "Verbundene Dinge" oft Teilproblem/Abstraktion einer Aufgabenstellung Karten: Wie ist der kürzeste Weg von Sanssouci nach Kunnersdorf? Hypertext: Welche Seiten sind

Mehr

Tutorium Algorithmen & Datenstrukturen

Tutorium Algorithmen & Datenstrukturen June 16, 2010 Binärer Baum Binärer Baum enthält keine Knoten (NIL) besteht aus drei disjunkten Knotenmengen: einem Wurzelknoten, einem binären Baum als linken Unterbaum und einem binären Baum als rechten

Mehr

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK

Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 29.05.2011 Das Postamt-Problem b(p, q) = {x R 2 : xp = xq } p q h(p, q) h(q, p) = {x :

Mehr

Theorie der Informatik Übersicht. Theorie der Informatik SAT Graphenprobleme Routing-Probleme. 21.

Theorie der Informatik Übersicht. Theorie der Informatik SAT Graphenprobleme Routing-Probleme. 21. Theorie der Informatik 19. Mai 2014 21. einige NP-vollständige Probleme Theorie der Informatik 21. einige NP-vollständige Probleme 21.1 Übersicht 21.2 Malte Helmert Gabriele Röger 21.3 Graphenprobleme

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS) Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2012/13 25. Vorlesung Dynamisches Programmieren Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Klausurvorbereitung Tipp: Schreiben Sie sich alle Fragen

Mehr

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke Graphen Graphentheorie Graphentheorie Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke 2 Was ist ein Graph? Ein Graph ist in der Graphentheorie eine abstrakte Struktur,

Mehr

Algorithmen und Datenstrukturen 2. Dynamische Datenstrukturen

Algorithmen und Datenstrukturen 2. Dynamische Datenstrukturen Algorithmen und Datenstrukturen 2 Dynamische Datenstrukturen Algorithmen für dynamische Datenstrukturen Zugriff auf Variable und Felder durch einen Ausdruck: Namen durch feste Adressen referenziert Anzahl

Mehr

Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur vom Seite 1. Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15.

Kurs 1663 Datenstrukturen Musterlösungen zur Klausur vom Seite 1. Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15. Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur vom 15.08.98 Seite 1 Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15. August 1998 Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur

Mehr

Übersicht. Aktivitäten-Auswahl-Problem. Greedy Algorithmen. Aktivitäten-Auswahl-Problem. Aktivitäten-Auswahl-Problem. Datenstrukturen & Algorithmen

Übersicht. Aktivitäten-Auswahl-Problem. Greedy Algorithmen. Aktivitäten-Auswahl-Problem. Aktivitäten-Auswahl-Problem. Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Übersicht Greedy Algorithmen Einführung Aktivitäten-Auswahl-Problem Huffman Codierung Matthias Zwicker Universität Bern Frühling 2009 2 Greedy Algorithmen Entwurfsstrategie

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

13. Binäre Suchbäume

13. Binäre Suchbäume 1. Binäre Suchbäume Binäre Suchbäume realiesieren Wörterbücher. Sie unterstützen die Operationen 1. Einfügen (Insert) 2. Entfernen (Delete). Suchen (Search) 4. Maximum/Minimum-Suche 5. Vorgänger (Predecessor),

Mehr

Kürzeste Wege in einfachen Polygonen. Sofiya Scheuermann 28. Januar 2008

Kürzeste Wege in einfachen Polygonen. Sofiya Scheuermann 28. Januar 2008 Kürzeste Wege in einfachen Polygonen Sofiya Scheuermann 28. Januar 2008 1 Inhaltsverzeichnis 1 Motivation 3 2 Grundlagen 3 3 Algorithmus 3 3.1 Zerlegung............................... 4 3.2 Zusammensetzung..........................

Mehr

Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8

Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 ETH Zürich Institut für Theoretische Informatik Prof. Dr. Angelika Steger Florian Meier, Ralph Keusch HS 2017 Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 Lösungsvorschlag zu Aufgabe 1

Mehr

3-Färbbarkeit. Korollar: Zu Entscheiden, ob ein Graph k-färbbar ist mit k 3, ist NP-vollständig.

3-Färbbarkeit. Korollar: Zu Entscheiden, ob ein Graph k-färbbar ist mit k 3, ist NP-vollständig. 3-Färbbarkeit Wir wissen bereits, dass in polynomieller Zeit entschieden werden kann, ob ein Graph 2-färbbar ist. Satz: Zu Entscheiden, ob ein Graph 3-färbbar ist, ist NPvollständig. Beweis: Reduktion

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 10.06.2016 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 07 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München 7 Fortgeschrittene Datenstrukturen Graphen

Mehr

Sichtbarkeitsgraph. Andreas Gemsa Übung Algorithmische Geometrie

Sichtbarkeitsgraph. Andreas Gemsa Übung Algorithmische Geometrie Übung Algorithmische Geometrie Sichtbarkeitsgraph LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 19.07.2012 Ablauf Nachtrag Sichtbarkeitsgraph WSPD

Mehr

Technische Universität München. Vorlesungsgrobstruktur: wo stehen wir, wie geht s weiter

Technische Universität München. Vorlesungsgrobstruktur: wo stehen wir, wie geht s weiter Vorlesungsgrobstruktur: wo stehen wir, wie geht s weiter Kapitel 7 Fortgeschrittene Datenstrukturen Motivation: Lineare Liste: Suchen eines Elements ist schnell O(log n) Einfügen eines Elements ist langsam

Mehr

Grundlagen Algorithmen und Datenstrukturen TUM Sommersemester 2011 (2) Dozent: Hanjo Täubig

Grundlagen Algorithmen und Datenstrukturen TUM Sommersemester 2011 (2) Dozent: Hanjo Täubig Grundlagen Algorithmen und Datenstrukturen TUM Sommersemester 2011 (2) Dozent: Hanjo Täubig Janosch Maier 3. August 2011 Inhaltsverzeichnis 1 Sortieren 3 1.1 Externes Sortieren..........................

Mehr

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x

Mehr

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2017/2018

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2017/2018 Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2017/2018 23. November 2017 1/40 Satz 4.27 (Multinomialsatz) Seien r, n N 0. Dann gilt für

Mehr

Datenstrukturen und Algorithmen

Datenstrukturen und Algorithmen Datenstrukturen und Algorithmen VO INF.02031UF (2-4)-Bäume robert.legenstein@igi.tugraz.at 1 7. Bäume Bäume als Datenstruktur Binärbäume Balancierte Bäume (2-4)-Bäume Anwendung: Mischbare Warteschlangen

Mehr

Digraphen, DAGs und Wurzelbäume

Digraphen, DAGs und Wurzelbäume Digraphen (gerichtete Graphen) Slide 1 Digraphen, DAGs und Wurzelbäume Digraphen (gerichtete Graphen) Slide 2 Eingangs- und Ausgangsgrad Bei einer gerichteten Kante e = (u,v) E heißt u Startknoten von

Mehr

Visualisierung von Graphen

Visualisierung von Graphen 1 Visualisierung von Graphen Hierarchische Zeichnungen 6. Vorlesung Sommersemester 2015 (basierend auf Folien von Marcus Krug, KIT) 2 Beispiel E-Mail-Graph zwischen Einrichtungen der Fak. für Informatik,

Mehr

Algorithmen zur Visualisierung von Graphen

Algorithmen zur Visualisierung von Graphen Algorithmen zur Visualisierung von Graphen Flussmethoden Knickminimierung in orthogonalen Layouts Vorlesung im Sommersemester 2009 Martin Nöllenburg.05.2009 Lehrstuhl für Algorithmik nstitut für Theoretische

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr