Graphenalgorithmen I
|
|
|
- Pia Pfaff
- vor 8 Jahren
- Abrufe
Transkript
1 Graphenalgorithmen I Vortrag im Seminar Hallo Welt! für Fortgeschrittene 7. Juni 211 Graphenalgorithmen I 1/33
2 Motivation Problem Wie komme ich am schnellsten ins Kanapee? Problem Wie kommt ein Datenpaket im Internet am schnellsten von A nach B? Herangehensweise Verkehrs- bzw. Computernetz als Graph darstellen, kürzesten Weg suchen Graphenalgorithmen I 2/33
3 Motivation Problem Wie komme ich am schnellsten ins Kanapee? Problem Wie kommt ein Datenpaket im Internet am schnellsten von A nach B? Herangehensweise Verkehrs- bzw. Computernetz als Graph darstellen, kürzesten Weg suchen Graphenalgorithmen I 2/33
4 Motivation Problem Wie komme ich am schnellsten ins Kanapee? Problem Wie kommt ein Datenpaket im Internet am schnellsten von A nach B? Herangehensweise Verkehrs- bzw. Computernetz als Graph darstellen, kürzesten Weg suchen Graphenalgorithmen I 2/33
5 Gliederung 1 Motivation 2 Grundlagen Definitionen & Begriffe Klassifizierung 3 Datenstrukturen Adjazenzliste Adjazenzmatrix 4 Algorithmen Traversierung Topologische Sortierung 5 Zusammenhangskomponenten Zusammenhang Brücken & Artikulationspunkte 6 Abschluss Zusammenfassung Ende Graphenalgorithmen I 3/33
6 Gliederung 1 Motivation 2 Grundlagen Definitionen & Begriffe Klassifizierung 3 Datenstrukturen Adjazenzliste Adjazenzmatrix 4 Algorithmen Traversierung Topologische Sortierung 5 Zusammenhangskomponenten Zusammenhang Brücken & Artikulationspunkte 6 Abschluss Zusammenfassung Ende Graphenalgorithmen I 4/33
7 Graphen Definition Ein Graph G ist ein 2-Tupel (V, E) mit V Menge der Knoten (en. vertex, pl. vertices) E Menge der Kanten (en. edge, pl. edges) Beispiel 2 C B 2 4 A V = {A, B, C} E = { (A, B, 4), (A, C, 2), (C, B, 2) } Graphenalgorithmen I 5/33
8 Graphen Definition Ein Graph G ist ein 2-Tupel (V, E) mit V Menge der Knoten (en. vertex, pl. vertices) E Menge der Kanten (en. edge, pl. edges) Beispiel 2 C B 2 4 A V = {A, B, C} E = { (A, B, 4), (A, C, 2), (C, B, 2) } Graphenalgorithmen I 5/33
9 Kanten Kanten Kanten gibt es in verschiedenen Ausführungen: gerichtet und ungerichtet mit und ohne Gewicht/Kosten Beispiel C A ungerichtet ohne Gewicht: V = {A, B, C} E = { {A, B}, {A, C}, {B, C} } B Graphenalgorithmen I 6/33
10 Kanten Kanten Kanten gibt es in verschiedenen Ausführungen: gerichtet und ungerichtet mit und ohne Gewicht/Kosten Beispiel C A ungerichtet ohne Gewicht: V = {A, B, C} E = { {A, B}, {A, C}, {B, C} } B Graphenalgorithmen I 6/33
11 Kanten Kanten Kanten gibt es in verschiedenen Ausführungen: gerichtet und ungerichtet mit und ohne Gewicht/Kosten Beispiel C 2 B 2 4 A ungerichtet mit Gewicht: V = {A, B, C} { ({A, ) ( ) ( ) } E = B}, 4, {A, C}, 2, {B, C}, 2 Graphenalgorithmen I 6/33
12 Knoten Der Grad eines Knotens Grad eines Knotens = Anzahl der Kanten an diesem Knoten 3 3 Graphenalgorithmen I 7/33
13 dünn und dicht besetzte Graphen E V 2 dünn besetzt E V 2 dicht besetzt Graphenalgorithmen I 8/33
14 Zyklen in Graphen azyklisch zyklisch Graphenalgorithmen I 9/33
15 Zyklen in Graphen azyklisch zyklisch Graphenalgorithmen I 9/33
16 Gliederung 1 Motivation 2 Grundlagen Definitionen & Begriffe Klassifizierung 3 Datenstrukturen Adjazenzliste Adjazenzmatrix 4 Algorithmen Traversierung Topologische Sortierung 5 Zusammenhangskomponenten Zusammenhang Brücken & Artikulationspunkte 6 Abschluss Zusammenfassung Ende Graphenalgorithmen I 1/33
17 Adjazenzliste Adjazenzliste Jedem Knoten wird eine Liste von ausgehenden Kanten zugeordnet Speicherung in Art ungewichtet gewichtet Datenstruktur List<V>[] mit V als Index List<tuple<V, Weight>>[] mit V als Index Speicherbedarf O ( E + V ) v.a. bei dünn besetzten Graphen effizient Suchen von eingehenden Kanten nicht a möglich a oder nur schlecht Graphenalgorithmen I 11/33
18 Adjazenzliste Adjazenzliste Jedem Knoten wird eine Liste von ausgehenden Kanten zugeordnet Speicherung in Art ungewichtet gewichtet Datenstruktur List<V>[] mit V als Index List<tuple<V, Weight>>[] mit V als Index Speicherbedarf O ( E + V ) v.a. bei dünn besetzten Graphen effizient Suchen von eingehenden Kanten nicht a möglich a oder nur schlecht Graphenalgorithmen I 11/33
19 Adjazenzliste Beispiel Beispiel 2 C B 2 4 A Knoten Kanten A (B, 4), (C, 2) B (A, 4), (C, 2) C (A, 2), (B, 2) Graphenalgorithmen I 12/33
20 Adjazenzmatrix Adjazenzmatrix V V -Matrix; a ij ist falls (i, j) V (d.h. die Kante von i nach j existiert): das Gewicht der Kante in gewichteten Graphen 1 in ungewichteten Graphen ein ungültiger Wert, falls die Kante nicht existiert (z.b. ) für ungerichtete Graphen nur Dreiecksmatrix nötig Prüfen der Existenz einer Kante: O (1) ( Speicherbedarf O V 2), unabhängig von E Graphenalgorithmen I 13/33
21 Adjazenzmatrix Adjazenzmatrix V V -Matrix; a ij ist falls (i, j) V (d.h. die Kante von i nach j existiert): das Gewicht der Kante in gewichteten Graphen 1 in ungewichteten Graphen ein ungültiger Wert, falls die Kante nicht existiert (z.b. ) für ungerichtete Graphen nur Dreiecksmatrix nötig Prüfen der Existenz einer Kante: O (1) ( Speicherbedarf O V 2), unabhängig von E Graphenalgorithmen I 13/33
22 Adjazenzmatrix Beispiel Beispiel 2 C B 2 4 A A B C A 4 2 B 2 C Graphenalgorithmen I 14/33
23 Gliederung 1 Motivation 2 Grundlagen Definitionen & Begriffe Klassifizierung 3 Datenstrukturen Adjazenzliste Adjazenzmatrix 4 Algorithmen Traversierung Topologische Sortierung 5 Zusammenhangskomponenten Zusammenhang Brücken & Artikulationspunkte 6 Abschluss Zusammenfassung Ende Graphenalgorithmen I 15/33
24 Tiefensuche Tiefensuche Durchsuchen eines Graphen z.b. zum Finden von Zyklen O ( V + E ) begin DFS start, ziel if start = ziel then return true; if start als besucht markiert then return false; start als besucht markieren; foreach n: start.children do if DFS(n, ziel) then return true; end return false end Graphenalgorithmen I 16/33
25 Tiefensuche Tiefensuche Durchsuchen eines Graphen z.b. zum Finden von Zyklen O ( V + E ) begin DFS start, ziel if start = ziel then return true; if start als besucht markiert then return false; start als besucht markieren; foreach n: start.children do if DFS(n, ziel) then return true; end return false end Graphenalgorithmen I 16/33
26 Iterative Tiefensuche 1 p u b l i c c l a s s DFSIter { 2 p u b l i c s t a t i c boolean d f s ( L i s t <Vertex > v e r t i c e s, L i s t < Edge> edges, V e r t e x s t a r t, V e r t e x end ) { 3 Stack<Vertex > l i s t = new Stack<Vertex >() ; 4 TreeSet<Vertex > v i s i t e d = new TreeSet<Vertex >() ; 5 6 l i s t. push ( s t a r t ) ; 7 w h i l e ( l i s t. s i z e ( ) > ) { 8 V e r t e x v = l i s t. pop ( ) ; 9 1 i f ( v i s i t e d. c o n t a i n s ( v ) ) c o n t i n u e ; 11 v i s i t e d. add ( v ) ; i f ( s t a r t == end ) r e t u r n t r u e ; 14 f o r ( V e r t e x c : v. c h i l d r e n ) 15 i f (! v i s i t e d. c o n t a i n s ( c ) ) 16 l i s t. push ( c ) ; 17 } 18 r e t u r n f a l s e ; 19 } 2 } Graphenalgorithmen I 17/33
27 Breitensuche 1 p u b l i c c l a s s BFS { 2 p u b l i c s t a t i c boolean b f s ( L i s t <Vertex > v e r t i c e s, L i s t < Edge> edges, V e r t e x s t a r t, V e r t e x end ) { 3 Queue<Vertex > l i s t = new Queue<Vertex >() ; 4 TreeSet<Vertex > v i s i t e d = new TreeSet<Vertex >() ; 5 6 l i s t. add ( s t a r t ) ; 7 w h i l e ( l i s t. s i z e ( ) > ) { 8 V e r t e x v = l i s t. remove ( ) ; 9 1 i f ( v i s i t e d. c o n t a i n s ( v ) ) c o n t i n u e ; 11 v i s i t e d. add ( v ) ; i f ( s t a r t == end ) r e t u r n t r u e ; 14 f o r ( V e r t e x c : v. c h i l d r e n ) 15 i f (! v i s i t e d. c o n t a i n s ( c ) ) 16 l i s t. add ( c ) ; 17 } 18 r e t u r n f a l s e ; 19 } 2 } Graphenalgorithmen I 18/33
28 Topologische Sortierung Topsort Arbeitet auf gerichteten, azyklischen Graphen (sog. DAGs) Interpretiert Kanten als Abhängigkeiten und sortiert die Knoten so in eine Liste, dass die Abhängigkeiten erfüllt sind Es kann mehrere solche topologische Sortierungen geben Algorithmus: 1. Suche Knoten ohne Eingangskante 2. Markiere und entferne Knoten 3. Wiederhole, bis Graph leer Aufwand analog zu Tiefensuche Graphenalgorithmen I 19/33
29 Jacke Hose Schuhe Hemd Shorts Socken Graphenalgorithmen I 2/33
30 Jacke Hose Schuhe Hemd Socken Shorts Graphenalgorithmen I 2/33
31 Jacke Hose Schuhe Hemd Shorts Socken Graphenalgorithmen I 2/33
32 Jacke Hose Schuhe Shorts Socken Hemd Graphenalgorithmen I 2/33
33 Jacke Schuhe Shorts Socken Hemd Hose Graphenalgorithmen I 2/33
34 Jacke Shorts Socken Hemd Hose Schuhe Graphenalgorithmen I 2/33
35 Shorts Socken Hemd Hose Schuhe Jacke Graphenalgorithmen I 2/33
36 Shorts Socken Hemd Hose Schuhe Jacke Graphenalgorithmen I 2/33
37 Gliederung 1 Motivation 2 Grundlagen Definitionen & Begriffe Klassifizierung 3 Datenstrukturen Adjazenzliste Adjazenzmatrix 4 Algorithmen Traversierung Topologische Sortierung 5 Zusammenhangskomponenten Zusammenhang Brücken & Artikulationspunkte 6 Abschluss Zusammenfassung Ende Graphenalgorithmen I 21/33
38 Zusammenhang E E B D B D A C A C zusammenhängend nicht zusammenhängend Graphenalgorithmen I 22/33
39 Zusammenhang E E B D B D A C A C stark zusammenhängend schwach zusammenhängend Graphenalgorithmen I 23/33
40 Finden von Zusammenhangskomponenten in ungerichteten Graphen mittels Tiefensuche Färben des Graphen begin FindComponents c := ; visited[] := false; component[] := -1; foreach n: nodes do if! visited[n] then DFS(n, c); increment c; end end end Input: node n, component number c begin DFS n, c if! visited[n] then visited[n] := true; component[n] := c; foreach child: n.children do DFS(child, c) end end end Graphenalgorithmen I 24/33
41 Finden von Zusammenhangskomponenten in ungerichteten Graphen mittels Tiefensuche Färben des Graphen begin FindComponents c := ; visited[] := false; component[] := -1; foreach n: nodes do if! visited[n] then DFS(n, c); increment c; end end end Input: node n, component number c begin DFS n, c if! visited[n] then visited[n] := true; component[n] := c; foreach child: n.children do DFS(child, c) end end end Graphenalgorithmen I 24/33
42 Finden von Zusammenhangskomponenten in ungerichteten Graphen mittels Tiefensuche Färben des Graphen begin FindComponents c := ; visited[] := false; component[] := -1; foreach n: nodes do if! visited[n] then DFS(n, c); increment c; end end end Input: node n, component number c begin DFS n, c if! visited[n] then visited[n] := true; component[n] := c; foreach child: n.children do DFS(child, c) end end end Graphenalgorithmen I 24/33
43 Finden von Zusammenhangskomponenten in gerichteten Graphen mit dem Algorithmus von Kosaraju 1. Alle Knoten durch Tiefensuche nummerieren und bei der Rückkehr aus der Rekursion auf einen Stack legen 2. transponierten Graphen G T = ( V, E T ) erzeugen E T = { (v, u) (u, v) E } 3. Graph analog zur Suche bei ungerichteten Graphen durch Tiefensuche in Reihenfolge des Stacks färben Ein Knoten kann nicht in zwei Zusammenhangskomponenten sein! Graphenalgorithmen I 25/33
44 F E C D A B Graphenalgorithmen I 26/33
45 F E C D B Graphenalgorithmen I 26/33
46 F E 1 D B Graphenalgorithmen I 26/33
47 F E 1 2 B Graphenalgorithmen I 26/33
48 F B Graphenalgorithmen I 26/33
49 B Graphenalgorithmen I 26/33
50 4F F B Graphenalgorithmen I 26/33
51 F E3 1 2 E F B Graphenalgorithmen I 26/33
52 F E D 1 D2 E F B Graphenalgorithmen I 26/33
53 F E C D C1 D E F B Graphenalgorithmen I 26/33
54 A F E C D C D E F A B Graphenalgorithmen I 26/33
55 A F E C D C D E F A 5 Graphenalgorithmen I 26/33
56 B A F E C D C D E F A B Graphenalgorithmen I 26/33
57 B A F E C D C D E F A B Graphenalgorithmen I 26/33
58 B A F E C D C D E F A B Graphenalgorithmen I 26/33
59 B A F E C D C D E F A B Graphenalgorithmen I 26/33
60 B A F E C D C D E F A B Graphenalgorithmen I 26/33
61 B A F E C D C D E F A B Graphenalgorithmen I 26/33
62 B A F E C D C D E F A B Graphenalgorithmen I 26/33
63 B A F E C D C D E F A B Graphenalgorithmen I 26/33
64 Brücken Brücken Kante, durch deren Entfernung der Graph in zwei Zusammenhangskomponenten zerfallen würde Finden durch Tiefensuche 1. Beim Abstieg: Jedem Knoten Nummer zuweisen 2. Bei der Rückkehr: Jeder Kante Nummer des kleinsten über sie erreichbaren Knotens zuweisen Brücken sind diejenigen Kanten, deren kleinste über sie erreichbare Knotennummer größer als die Nummer des Knotens, von dem aus sie traversiert worden sind, ist Graphenalgorithmen I 27/33
65 F E C D A B Graphenalgorithmen I 28/33
66 F E C D B Graphenalgorithmen I 28/33
67 F E 1 D B Graphenalgorithmen I 28/33
68 F E 1 D 2 Graphenalgorithmen I 28/33
69 F E 1 D 2 Graphenalgorithmen I 28/33
70 F E Graphenalgorithmen I 28/33
71 F Graphenalgorithmen I 28/33
72 Graphenalgorithmen I 28/33
73 Graphenalgorithmen I 28/33
74 Graphenalgorithmen I 28/33
75 Graphenalgorithmen I 28/33
76 Graphenalgorithmen I 28/33
77 Graphenalgorithmen I 28/33
78 Graphenalgorithmen I 28/33
79 Artikulationspunkte Artikulationspunkt Knoten, durch dessen Entfernung der Graph in zwei oder mehr Zusammenhangskomponenten zerfallen würde Finden analog zu Brücken durch Tiefensuche Artikulationspunkte sind a diejenigen Knoten, deren kleinste über eine ihrer ausgehenden Kanten erreichbare Knotennummer größer oder gleich ihrer Knotennummer ist Der Startknoten ist Artikulationspunkt, falls zwei oder mehr Kanten davon ausgehen a mit Ausnahme des Startknotens Graphenalgorithmen I 29/33
80 Graphenalgorithmen I 3/33
81 Graphenalgorithmen I 3/33
82 Graphenalgorithmen I 3/33
83 Gliederung 1 Motivation 2 Grundlagen Definitionen & Begriffe Klassifizierung 3 Datenstrukturen Adjazenzliste Adjazenzmatrix 4 Algorithmen Traversierung Topologische Sortierung 5 Zusammenhangskomponenten Zusammenhang Brücken & Artikulationspunkte 6 Abschluss Zusammenfassung Ende Graphenalgorithmen I 31/33
84 Zusammenfassung Speicherung Adjazenzliste, Adjazenzmatrix Traversierung & Sortierung Tiefen- und Breitensuche, Topologische Sortierung Zusammenhangskomponenten Finden mit Tiefensuche und Kosaraju, Brücken, Artikulationspunkte Graphenalgorithmen I 32/33
85 Zusammenfassung Speicherung Adjazenzliste, Adjazenzmatrix Traversierung & Sortierung Tiefen- und Breitensuche, Topologische Sortierung Zusammenhangskomponenten Finden mit Tiefensuche und Kosaraju, Brücken, Artikulationspunkte Graphenalgorithmen I 32/33
86 Zusammenfassung Speicherung Adjazenzliste, Adjazenzmatrix Traversierung & Sortierung Tiefen- und Breitensuche, Topologische Sortierung Zusammenhangskomponenten Finden mit Tiefensuche und Kosaraju, Brücken, Artikulationspunkte Graphenalgorithmen I 32/33
87 Q&A Danke für die Aufmerksamkeit Questions & Answers Graphenalgorithmen I 33/33
Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (20 Graphen) T. Lauer 1 Motivation Wie komme ich am besten von Freiburg nach Ulm? Was ist die kürzeste Rundreise durch eine gegebene Menge von Städten?
Ein Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist.
Graphen Definition: Ein Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist. Begriffe: Gerichteter Graph: Alle Kanten haben eine Richtung vom Anfangsknoten
Algorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik [email protected] Traversierung Durchlaufen eines Graphen, bei
Algorithmen und Datenstrukturen Graphen - Einführung
Algorithmen und Datenstrukturen Graphen - Einführung Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Überblick Definition / Eigenschaften Anwendungen Repräsentation
Informatik 11 Kapitel 2 - Rekursive Datenstrukturen
Fachschaft Informatik Informatik 11 Kapitel 2 - Rekursive Datenstrukturen Michael Steinhuber König-Karlmann-Gymnasium Altötting 15. Januar 2016 Folie 1/77 Inhaltsverzeichnis I 1 Datenstruktur Schlange
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
Algorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik [email protected] Algorithmen für Graphen Fragestellungen: Suche
1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
Breiten- und Tiefensuche in Graphen
Breiten- und Tiefensuche in Graphen Inhalt Theorie. Graphen. Die Breitensuche in der Theorie am Beispiel eines ungerichteten Graphen. Die Tiefensuche in der Theorie am Beispiel eines gerichteten Graphen
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung
Algorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik [email protected] Wdhlg.: Dijkstra-Algorithmus I Bestimmung der
ADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen Der Tragödie IV. Theyl Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University
Graphen: Datenstrukturen und Algorithmen
Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.
Routing Algorithmen. Begriffe, Definitionen
Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über
Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten
Gliederung Zusammenhang von Graphen Stark Zusammenhängend K-fach Zusammenhängend Brücken Definition Algorithmus zum Finden von Brücken Anwendung Zusammenhangskomponente Definition Wichtige Aussagen und
Das Briefträgerproblem
Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................
Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik
Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus
Algorithmen und Datenstrukturen (WS 2007/08) 63
Kapitel 6 Graphen Beziehungen zwischen Objekten werden sehr oft durch binäre Relationen modelliert. Wir beschäftigen uns in diesem Kapitel mit speziellen binären Relationen, die nicht nur nur besonders
10 Graphenalgorithmen in Java
10.1 Implementierung eines gewichteten Graphen 10.2 Implementierung der Breitensuche 10.3 Implementierung der Tiefensuche 10 147 Teil X Graphalgorithmen in Java Überblick Implementierung eines gewichteten
16. All Pairs Shortest Path (ASPS)
. All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e
Anmerkungen zur Übergangsprüfung
DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung
Guten Morgen und Willkommen zur Saalübung!
Guten Morgen und Willkommen zur Saalübung! 1 Wie gewinnt man ein Spiel? Was ist ein Spiel? 2 Verschiedene Spiele Schach, Tic-Tac-Toe, Go Memory Backgammon Poker Nim, Käsekästchen... 3 Einschränkungen Zwei
8 Graphrepräsentation
Sanders / van Stee: Algorithmentechnik November, 7 1 8 Graphrepräsentation 1736 fragt L. Euler die folgende touristische Frage: Straßen- oder Computernetzwerke Zugverbindungen (Raum und Zeit) Soziale Netzwerke
2. Repräsentationen von Graphen in Computern
2. Repräsentationen von Graphen in Computern Kapitelinhalt 2. Repräsentationen von Graphen in Computern Matrizen- und Listendarstellung von Graphen Berechnung der Anzahl der verschiedenen Kantenzüge zwischen
Algorithmen und Datenstrukturen 2-2. Seminar -
Algorithmen und Datenstrukturen 2-2. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 2. Übungsserie: 3 Aufgaben, insgesamt 30 Punkte A4 Flußnetzwerk, Restgraphen
Konzepte der Informatik
Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens
11.1 Grundlagen - Denitionen
11 Binärbäume 11.1 Grundlagen - Denitionen Denition: Ein Baum ist eine Menge, die durch eine sog. Nachfolgerrelation strukturiert ist. In einem Baum gilt: (I) (II) 1 Knoten w ohne VATER(w), das ist die
Datenstrukturen. Mariano Zelke. Sommersemester 2012
Datenstrukturen Mariano Zelke Sommersemester 2012 Mathematische Grundlagen: Das Handwerkszeug Mariano Zelke Datenstrukturen 2/26 Formeln: n - i = n (n+1) 2 und - i=1 k i=0 a i = ak+1 1 a 1, falls a 1 Rechnen
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!
Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik
Vorlesung für den Bereich Diplom/Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes
9.4.1 Wegsuche von a nach z
9.4 Wegsuche Beispiele: Weg von a nach z Weg von a nach roter Ecke alle Wege gemäß desgl. mit Länge, ferner kürzester/längster Weg... und weitere alp3-9.4 1 9.4.1 Wegsuche von a nach z Gegeben: Gesucht:
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:
Einführung in Heuristische Suche
Einführung in Heuristische Suche Beispiele 2 Überblick Intelligente Suche Rundenbasierte Spiele 3 Grundlagen Es muss ein Rätsel / Puzzle / Problem gelöst werden Wie kann ein Computer diese Aufgabe lösen?
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
Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf
Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen
Flüsse, Schnitte, bipartite Graphen
Flüsse, Schnitte, bipartite Graphen Vlad Popa 08.06.2010 Inhaltsverzeihnis 1. Flussnetzwerke und Flüsse 1.1 Ford- Fulkerson 1.2 Edmond Karp 1.3 Dinic 2. Schnitte 3. Maximaler Fluss bei minimalen Kosten
Branch-and-Bound. Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir
Effiziente Algorithmen Lösen NP-vollständiger Probleme 289 Branch-and-Bound Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir 1.
Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume
Effiziente Algorithmen und Datenstrukturen I Kapitel 9: Minimale Spannbäume Christian Scheideler WS 008 19.0.009 Kapitel 9 1 Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen
Dynamische Programmierung. Problemlösungsstrategie der Informatik
als Problemlösungsstrategie der Informatik und ihre Anwedung in der Diskreten Mathematik und Graphentheorie Fabian Cordt Enisa Metovic Wissenschaftliche Arbeiten und Präsentationen, WS 2010/2011 Gliederung
Vorlesung 4 BETWEENNESS CENTRALITY
Vorlesung 4 BETWEENNESS CENTRALITY 101 Aufgabe! Szenario: Sie arbeiten bei einem sozialen Online-Netzwerk. Aus der Netzwerk-Struktur Ihrer Benutzer sollen Sie wichtige Eigenschaften extrahieren. [http://www.fahrschule-vatterodt.de/
Grundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 9. Klassische Suche: Baumsuche und Graphensuche Malte Helmert Universität Basel 13. März 2015 Klassische Suche: Überblick Kapitelüberblick klassische Suche: 5. 7.
4.7 Der Algorithmus von Dinic für maximalen Fluss
4.7 Der Algorithmus von Dinic für maximalen Fluss Wir kennen bereits den Algorithmus von Ford Fulkerson zur Suche nach einem maximalen Fluss in einem Graphen. Wir lernen nun einen Algorithmus für maximalen
Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
Effiziente Algorithmen I
H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug
Randomisierte Algorithmen
Randomisierte Algorithmen Randomisierte Algorithmen 7. Random Walks Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 43 Überblick Überblick Ein randomisierter
Erzeugung zufälliger Graphen und Bayes-Netze
Erzeugung zufälliger Graphen und Bayes-Netze Proseminar Algorithmen auf Graphen Georg Lukas, IF2000 2002-07-09 E-Mail: [email protected] Folien: http://op-co.de/bayes/ Gliederung 1. Einleitung 2. einfache
Kapitel MK:IV. IV. Modellieren mit Constraints
Kapitel MK:IV IV. Modellieren mit Constraints Einführung und frühe Systeme Konsistenz I Binarization Generate-and-Test Backtracking-basierte Verfahren Konsistenz II Konsistenzanalyse Weitere Analyseverfahren
Praktikum Planare Graphen
1 Praktikum Planare Graphen Michael Baur, Martin Holzer, Steffen Mecke 10. November 2006 Einleitung Gliederung 2 Grundlagenwissen zu planaren Graphen Themenvorstellung Gruppeneinteilung Planare Graphen
Institut für Programmierung und Reaktive Systeme 25. August 2014. Programmier-Labor. 04. + 05. Übungsblatt. int binarysearch(int[] a, int x),
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 25. August 2014 Programmier-Labor 04. + 05. Übungsblatt Aufgabe 21: a) Schreiben Sie eine Methode
3. Musterlösung. Problem 1: Boruvka MST
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner. Musterlösung Problem : Boruvka MST pt (a) Beweis durch Widerspruch. Sei T MST von G, e die lokal minimale Kante eines
4 Greedy-Algorithmen (gierige Algorithmen)
Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine
Graphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007
Graphentheorie Rainer Schrader Organisatorisches Zentrum für Angewandte Informatik Köln 23. Oktober 2007 1 / 79 2 / 79 Organisatorisches Organisatorisches Dozent: Prof. Dr. Rainer Schrader Weyertal 80
Name: Seite 2. Beantworten Sie die Fragen in den Aufgaben 1 und 2 mit einer kurzen, prägnanten Antwort.
Name: Seite 2 Beantworten Sie die Fragen in den Aufgaben 1 und 2 mit einer kurzen, prägnanten Antwort. Aufgabe 1 (8 Punkte) 1. Wie viele negative Zahlen (ohne 0) lassen sich im 4-Bit-Zweierkomplement darstellen?
2 Lösungen "Peptide de novo Sequencing"
Lösungen "Peptide de novo Sequencing". Algorithm : PeptideSequencingOnlySux Input: a spectrum M with array of masses M = {m, m,, m n }, Σ, µ : Σ R >0 Output: the peptide string of the spectrum begin peptide
Kapitel 6: Graphalgorithmen Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. äume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/5, olie 1 2014 Prof. Steffen Lange - HDa/bI
Übungen zu Programmierung I - Blatt 8
Dr. G. Zachmann A. Greß Universität Bonn Institut für Informatik II 1. Dezember 2004 Wintersemester 2004/2005 Übungen zu Programmierung I - Blatt 8 Abgabe am Mittwoch, dem 15.12.2004, 15:00 Uhr per E-Mail
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens [email protected] Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes
Wiederholung zu Flüssen
Universität Konstanz Methoden der Netzwerkanalyse Fachbereich Informatik & Informationswissenschaft SS 2008 Prof. Dr. Ulrik Brandes / Melanie Badent Wiederholung zu Flüssen Wir untersuchen Flüsse in Netzwerken:
Uninformierte Suche in Java Informierte Suchverfahren
Uninformierte Suche in Java Informierte Suchverfahren Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Suchprobleme bestehen aus Zuständen
C++, LEDA und STL Visualisierung minimal/maximal aufspannender Bäume
Fachbereich IV, Informatik Softwarepraktikum C++, LEDA und STL Visualisierung minimal/maximal aufspannender Bäume Wintersemester 2004/2005 Dokumentation Algorithmen zur Lösung von MST - Problemen Nicolas
Vorlesung 3 MINIMALE SPANNBÄUME
Vorlesung 3 MINIMALE SPANNBÄUME 72 Aufgabe! Szenario: Sie arbeiten für eine Firma, die ein Neubaugebiet ans Netz (Wasser, Strom oder Kabel oder...) anschließt! Ziel: Alle Haushalte ans Netz bringen, dabei
Grundwissen Informatik Q11/12 Fragenkatalog
12_Inf_GrundwissenInformatik_Opp.doc 1 Grundwissen Informatik Q11/12 Fragenkatalog 11/2 Aufgabengebiet 1: Graphen, Wege durch Graphen: 1. Durch welche Bestandteile wird ein Graph festgelegt? 2. Nenne verschiedene
Rechnerische Komplexität
Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit
Algorithmische Mathematik
Algorithmische Mathematik Wintersemester 2013 Prof. Dr. Marc Alexander Schweitzer und Dr. Einar Smith Patrick Diehl und Daniel Wissel Übungsblatt 6. Abgabe am 02.12.2013. Aufgabe 1. (Netzwerke und Definitionen)
4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum
4. Lernen von Entscheidungsbäumen Klassifikation mit Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch /Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse zugeordnet werden.
Grundlagen der Programmierung 2. Bäume
Grundlagen der Programmierung 2 Bäume Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 24. Mai 2006 Graphen Graph: Menge von Knoten undzugehörige (gerichtete oder ungerichtete)
Algorithmen und Datenstrukturen Suchbaum
Algorithmen und Datenstrukturen Suchbaum Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Datenstruktur zur Repräsentation dynamischer Mengen
Flüsse, Schnitte, bipartite Graphen. Martin Oettinger
Flüsse, Schnitte, bipartite Graphen Martin Oettinger Übersicht Einführung Algorithmen für maximalen Fluss Preflow-Push Ford-Fulkerson Spezialfall: Maximaler Fluss bei minimalen Kosten Reduktionen Bipartites
Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015
Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken
Algorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36
Algorithmen und Datenstrukturen Kapitel 10
Algorithmen und Datenstrukturen Kapitel 10 Flüsse Frank Heitmann [email protected] 6. Januar 2016 Frank Heitmann [email protected] 1/8 Flüsse Graphen Grundlagen Definition
Algorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
Überblick. Einführung Graphentheorie
Überblick Einführung Graphentheorie Graph-Algorithmen mit Map Kurzeinführung Graphentheorie Algorithmus zum Finden von Cliquen Graphen bestehen aus Knoten (englisch: Node, Vertex, Mehrzahl Vertices) Kanten
Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche
Algorithmus zum Graphen-Matching und Anwendung zur inhaltsbasierten Bildersuche Gliederung 1. Einführung 2. Algorithmus Beschreibung Beispiel Laufzeit 3. Anwendung des Algorithmus Seite 1 von 18 1. Einführung
Geometrie I. Sebastian Redinger Informatik 2 Programmiersysteme Martensstraße Erlangen
Geometrie I Sebastian Redinger 01.07.2015 Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Gliederung Grundlagen CCW Polygone Picks Theorem Konvexe Hülle - Graham Scan - Jarvis March 2 Gliederung
SS 2013 1.1-1 / 12
AMPELSTEUERUNG EINER KREUZUNG [email protected] SS 2013 1.1-1 / 12 (A) PROBLEM D C E B A Ziel (1) Sicherheit: keine kollidierenden Wege gleichzeitig, z.b. EB und AD Ziel (2) Maximierung:
Algorithmentheorie. 13 - Maximale Flüsse
Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk
Methoden der Netzwerkanalyse
Methoden der Netzwerkanalyse Skript zur Vorlesung Ulrik Brandes Sommersemester 005 (letzte Änderung:. August 006) Prolog Methoden der Netzwerkanalyse (Spezialvorlesung Algorithmen) [AKTIV: wo treten Netzwerke
Algorithmische Methoden der Netzwerkanalyse
Algorithmische Methoden der Netzwerkanalyse Marco Gaertler 9. Dezember, 2008 1/ 15 Abstandszentralitäten 2/ 15 Distanzsummen auf Bäumen Lemma Sei T = (V, E) ein ungerichteter Baum und T s = (V S, E s )
Wiederholung ADT Menge Ziel: Verwaltung (Finden, Einfügen, Entfernen) einer Menge von Elementen
Was bisher geschah abstrakter Datentyp : Signatur Σ und Axiome Φ z.b. ADT Menge zur Verwaltung (Finden, Einfügen, Entfernen) mehrerer Elemente desselben Typs Spezifikation einer Schnittstelle Konkreter
HEUTE. Datenstrukturen im Computer. Datenstrukturen. Rekursion. Feedback Evaluation. abstrakte Datenstrukturen
9.2.5 HUT 9.2.5 3 atenstrukturen im omputer atenstrukturen ie beiden fundamentalen atenstrukturen in der Praxis sind rray und Liste Rekursion Feedback valuation rray Zugriff: schnell Umordnung: langsam
Scheduling-Theorie. Mathematische Modelle und Methoden für deterministische Scheduling-Probleme. LiSA - A Library of Scheduling Algorithms
Scheduling-Theorie Mathematische Modelle und Methoden für deterministische Scheduling-Probleme LiSA - A Library of Scheduling Algorithms Otto-von-Guericke Universität Magdeburg/FMA/Heidemarie Bräsel &
Vorlesung 5: DATENSTRUKTUREN UND ALGORITHMEN
Vorlesung 5: DATENSTRUKTUREN UND ALGORITHMEN 125 Motivation! Wahl der Datenstruktur wichtiger Schritt beim Entwurf und der Implementierung von Algorithmen! Dünn besetzte Graphen und Matrizen bilden keine
Bäume. 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1
Bäume 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1 Inhalt Grundbegriffe: Baum, Binärbaum Binäre Suchbäume (Definition) Typische Aufgaben Suchaufwand Löschen allgemein, Methode Schlüsseltransfer
3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1
3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)
Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03
Reihungen Martin Wirsing in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 2 Ziele Die Datenstruktur der Reihungen verstehen: mathematisch und im Speicher Grundlegende Algorithmen auf Reihungen
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
Datenbanken und Informationssysteme
Datenbanken und Informationssysteme Serialisierbarkeit Burkhardt Renz Fachbereich MNI TH Mittelhessen Wintersemester 2015/16 Übersicht Serialisierbarkeit 2-Phasen-Sperrprotokoll (2PL) Verklemmungen Modell
Programmieren ++ Begleitende Übungen zu Veranstaltungen + Umsetzen des Algorithmus in ein lauffähiges Programm
Studienanforderungen Studiengang Maschinenbau Programmieren Begleitende Übungen zu Veranstaltungen Umsetzen des Algorithmus in ein lauffähiges Programm Studiengang Bauingenieurwesen Programmieren Begleitende
2. Lernen von Entscheidungsbäumen
2. Lernen von Entscheidungsbäumen Entscheidungsbäume 2. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse
Algorithmen mit konstantem Platzbedarf: Die Klasse REG
Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August
Algorithmen zur Berechnung von Matchings
Algorithmen zur Berechnung von Matchings Berthold Vöcking 1 Einleitung Matchingprobleme sind Zuordnungsprobleme. Es geht darum z.b. Studierenden Plätze in Seminaren zuzuordnen, Bewerber auf freie Stellen
Klassische Themen der Computerwissenschaft Constraint Programming: Exercises. Gruppe: 100. Inhaltsverzeichnis
Klassische Themen der Computerwissenschaft Constraint Programming: Exercises Gruppe: 100 Inhaltsverzeichnis 1 Exercise 1 1 2 Exercise 2 2 2.1 Backtracking........................... 2 2.2 Forward checking.........................
Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder
Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element
