Erinnerung VL
|
|
- Pia Rosa Holzmann
- vor 6 Jahren
- Abrufe
Transkript
1 Erinnerung VL Graphtraverierung BFS (Breitenuche): in Schichten um Startknoten löt einfache Form de Kürzete-Wege-Problem DFS (Tiefenuche): ert abteigen, dann Alternativen anehen generich formuliert, viele Intanziierungen möglich Heute: mehr zu DFS, kürzete Wege KIT Intitut für Theoretiche Informatik 1
2 Erinnerung: Tiefenuchchema unmark all node; init foreach V do if i not marked then mark root() DFS(, ) // make a root and grow // a new DFS tree rooted at Procedure DFS(u, v : NodeId) // Explore v coming from u foreach (v,w) E do if w i marked then traverenontreeedge(v, w) ele traveretreeedge(v, w) mark w DFS(v,w) backtrack(u,v) // return from v along the incoming edge KIT Intitut für Theoretiche Informatik
3 Wiederholung: Kantenklaizierung Baumkanten: Elemente de Walde, der bei der Suche gebaut wird Vorwärtkanten: verlaufen parallel zu Wegen au Baumkanten Rückwärtkanten: verlaufen antiparallel zu Wegen au Baumkanten Querkanten: alle übrigen forward tree backward cro KIT Intitut für Theoretiche Informatik 3
4 DFS-Nummerierung init: root(): traveretreeedge(v, w): dfpo=1 : 1..n dfnum[]:= dfpo++ dfnum[w]:= dfpo++ u v : dfnum[u] < dfnum[v]. Beobachtung: Knoten auf dem Rekuriontapel ind bzgl. ortiert tree backward b e g f cro forward d c 7 6 KIT Intitut für Theoretiche Informatik 4
5 Fertigtellungzeit init: backtrack(u, v): nihingtime=1 : 1..n nihtime[v]:= nihingtime++ tree backward b e g f cro forward d c 6 3 KIT Intitut für Theoretiche Informatik
6 Kantenklaizierung bei DFS type dfnum[v] < nihtime[w] < w i (v, w) dfnum[w] nihtime[v] marked tree ye ye no forward ye ye ye backward no no ye cro no ye ye forward tree backward cro KIT Intitut für Theoretiche Informatik 6
7 Topologiche Sortierung Denition 1 Eine lineare Anordnung t der Knoten eine DAG G = (V,E), in der alle Kanten von kleineren zu gröÿeren Knoten verlaufen, heiÿt topologiche Sortierung, d. h. (u,v) E : t(u) < t(v). Beipiel: topologich ortierter Kleidergraph, Quelle: Wikipedia Kleidergraph, Quelle: Wikipedia KIT Intitut für Theoretiche Informatik 7
8 Topologiche Sortieren mittel DFS Theorem G it kreifrei (DAG) DFS ndet keine Rückwärtkante. In dieem Fall liefert t(v):= n nihtime[v] eine topologiche Sortierung. KIT Intitut für Theoretiche Informatik 8
9 Topologiche Sortieren mittel DFS Theorem G it kreifrei (DAG) DFS ndet keine Rückwärtkante. In dieem Fall liefert t(v):= n nihtime[v] eine topologiche Sortierung. Bewei : Annahme: Rückwärtkante. Zuammen mit Baumkanten ergibt ich ein Krei. Widerpruch. forward tree backward cro KIT Intitut für Theoretiche Informatik 8
10 Topologiche Sortieren mittel DFS Satz: G kreifrei (DAG) DFS ndet keine Rückwärtkante. In dieem Fall liefert t(v):= n nihtime[v] eine topologiche Sortierung, d. h. (u,v) E : t(u) < t(v). Bewei : Keine Rückwärtkante Kantenklaizierung {}}{ (v,w) E : nihtime[v] > nihtime[w] G it kreifrei und nihtime deniert umgekehrte topologiche Sortierung. KIT Intitut für Theoretiche Informatik 9
11 Starke Zuammenhangkomponenten Betrachte die Relation mit u v fall Pfad u,...,v und Pfad v,...,u. Beobachtung: it Äquivalenzrelation Die Äquivalenzklaen von bezeichnet man al tarke Zuammenhangkomponenten. Übung DFS-baierter Linearzeitalgorithmu Algorithmen II KIT Intitut für Theoretiche Informatik 1
12 Mehr DFS-baierte Linearzeitalgorithmen -zuammenhängende Komponenten: bei Entfernen eine Knoten au einer Komponente bleibt diee zuammenhängend (ungerichtet) 3-zuammenhängende Komponenten Planaritättet (lät ich der Graph kreuzungfrei zeichnen?) Einbettung planarer Graphen KIT Intitut für Theoretiche Informatik 11
13 BFS DFS pro BFS: nichtrekuriv keine Vorwärtkanten kürzete Wege, Umgebung pro DFS: keine explizite Datentruktur (Rekuriontapel) für ToDo, daher mglw. einfacher Grundlage vieler Algorithmen tree forward backward cro KIT Intitut für Theoretiche Informatik 1
14 Kap. 1: Kürzete Wege Eingabe: Graph G = (V,E) mit Kotenfunktion/Kantengewicht c : E R owie Startknoten. 3. km Augabe: für alle v V : Länge µ(v) de kürzeten Pfade von nach v, µ(v) := min{c(p) : p it Pfad von nach v} mit c( e 1,...,e k ) := k i=1 c(e i). KIT Intitut für Theoretiche Informatik 13
15 Kap. 1: Kürzete Wege Eingabe: Graph G = (V,E) mit Kotenfunktion/Kantengewicht c : E R owie Startknoten. 3. km Augabe: für alle v V : Länge µ(v) de kürzeten Pfade von nach v, µ(v) := min{c(p) : p it Pfad von nach v} mit c( e 1,...,e k ) := k i=1 c(e i). Oft wollen wir auch geeignete Repräentation der kürzeten Pfade. KIT Intitut für Theoretiche Informatik 13
16 Anwendungen Routenplanung Straÿennetze Spiele Kommunikationnetze Unterprogramm Flüe in Netzwerken... Tippfehlerkorrektur Dik Scheduling km KIT Intitut für Theoretiche Informatik 14
17 Grundlagen Gibt e immer einen kürzeten Pfad? E kann negative Kreie geben! p u C q v p u C () q v... weitere Grundlagen jut in time KIT Intitut für Theoretiche Informatik 1
18 Azykliche Graphen päter KIT Intitut für Theoretiche Informatik 16
19 Kantengewichte Alle Gewichte gleich: Breitenuche (BFS)! b c d e f g tree backward cro forward 1 3 KIT Intitut für Theoretiche Informatik 17
20 Dijktra Algorithmu Nun: Beliebige nichtnegative Kantengewichte Löung ohne Rechner: M R Ditance to M Kanten Fäden Kantengewicht Fadenlänge Knoten Knoten Dann: Am Startknoten anheben. H G F E C N K L P V Q S O J W KIT Intitut für Theoretiche Informatik 18
21 Korrektheit der Bindfäden Betrachte beliebigen Knoten v mit Hängetiefe d[v]. Pfad mit Hängetiefe: verfolge trae Fäden kürzerer Pfad: fall e einen olchen Pfad gäbe, wäre einer einer Fäden zerrien! H G F E C M N K L P V R Q S O J W Ditance to M KIT Intitut für Theoretiche Informatik 19
22 Edger Wybe Dijktra ACM Turing Award THE: da erte Mulitaking-OS Semaphor Selbt-tabiliierende Syteme GOTO Statement Conidered Harmful Bildquelle: Wikipedia KIT Intitut für Theoretiche Informatik
23 Allgemeine Denitionen Wie bei BFS benutzen wir zwei Knotenarray: d[v] = aktuelle (vorläuge) Ditanz von nach v Invariante: d[v] µ(v) parent[v] = Vorgänger von v auf dem (vorläugen) kürzeten Pfad von nach v Invariante: dieer Pfad bezeugt d[v] Initialiierung: d[] =, parent[] = d[v] =, parent[v] = Kante Kante Kante v parent parent parent d[v] KIT Intitut für Theoretiche Informatik 1
24 Kante (u,v) relaxieren Fall d[u] + c(u,v) < d[v] (vielleicht d[v] = ), etze d[v] := d[u] + c(u,v) und parent[v] := u Invarianten bleiben erhalten! Beobachtung: d[v] kann ich mehrmal ändern! KIT Intitut für Theoretiche Informatik
25 Dijktra Algorithmu: Peudocode initialize d, parent all node are non-canned while non-canned node u with d[u] < u := non-canned node v with minimal d[v] relax all edge (u,v) out of u u i canned now Behauptung: Am Ende deniert d die optimalen Entfernungen und parent die zugehörigen Wege KIT Intitut für Theoretiche Informatik 3
26 KIT Intitut für Theoretiche Informatik 4 Beipiel c b d e f c b d e f a 1 c d e f b f b e d c c f e d c d f b e a a b a a a 1 6 7
27 Korrektheit Annahme: alle Koten nicht-negativ! Wir zeigen: v V : v erreichbar = v wird irgendwann gecannt v gecannt = µ(v) = d[v] KIT Intitut für Theoretiche Informatik
28 v erreichbar = v wird irgendwann gecannt Annahme: v it erreichbar, aber wird nicht gecannt gecannt ungecannt ungecannt {}}{{}}{{}}{ = v 1 v v i 1 v i v k = v }{{} ein kürzeter v Pfad = v i 1 wird gecannt = Kante v i 1 v i wird relaxiert = d[v i ] < Widerpruch nur Knoten x mit d[x] = werden nie gecannt? KIT Intitut für Theoretiche Informatik 6
29 v erreichbar = v wird irgendwann gecannt Annahme: v it erreichbar, aber wird nicht gecannt gecannt ungecannt ungecannt {}}{{}}{{}}{ = v 1 v v i 1 v i v k = v }{{} ein kürzeter v Pfad = v i 1 wird gecannt = Kante v i 1 v i wird relaxiert = d[v i ] < Widerpruch nur Knoten x mit d[x] = werden nie gecannt Up: Spezialfall i = 1? Kann auch nicht ein. v 1 = wird nach Initialiierung gecannt. KIT Intitut für Theoretiche Informatik 6
30 v gecannt = µ(v) = d[v] Annahme: v gecannt und µ(v) < d[v] OBdA: v it der erte gecannte Knoten mit µ(v) < d[v]. t := Scan-Zeit von v Scan-Zeit < t Scan-Zeit t Scan-Zeit = t {}}{{}}{{}}{ = v 1 v v i 1 v i v k = v }{{} ein kürzeter v Pfad Alo gilt zur Zeit t: µ(v i 1 ) = d[v i 1 ] v i 1 v i wurde relaxiert {}}{ = d[v i ] d[v i 1 ] + c(v i 1,v i ) = µ(v i ) µ(v)< d[v] = v i wird vor v gecannt. Widerpruch! Wieder: Spezialfall i = 1 unmöglich. KIT Intitut für Theoretiche Informatik 7
31 Implementierung? initialize d, parent all node are non-canned while non-canned node u with d[u] < u := non-canned node v with minimal d[v] relax all edge (u,v) out of u u i canned now Wichtigte Operation: nde u KIT Intitut für Theoretiche Informatik 8
32 Prioritätlite Wir peichern ungecannte erreichte Knoten in adreierbarer Prioritätlite Q. Schlüel it d[v]. Knoten peichern handle. oder gleich item KIT Intitut für Theoretiche Informatik 9
33 Implementierung BFS mit PQ tatt FIFO Function Dijktra( : NodeId) : NodeArray NodeArray // return (d, parent) Initialiierung: d=,..., : NodeArray of R { } // tentative ditance from root parent=,..., : NodeArray of NodeId parent[]:= // elf-loop ignal root Q : NodePQ // uncanned reached node d[] := ; Q.inert() KIT Intitut für Theoretiche Informatik 3
34 Function Dijktra( : NodeId) : NodeArray NodeArray d =,..., ; parent[]:= ; d[] := ; Q.inert() while Q / do u := Q.deleteMin u // can u foreach edge e = (u,v) E do canned if d[u] + c(e) < d[v] then // relax d[v]:= d[u] + c(e) parent[v] := u // update tree if v Q then Q.decreaeKey(v) u v ele Q.inert(v) reached return (d, parent) KIT Intitut für Theoretiche Informatik 31
35 Beipiel 3 a b c d e f a b c d e f a b c d e f a b d e a b d e a b d e c f 7 c f 7 c f Operation Queue inert() (,) deletemin (,) relax a (a,) relax 1 d (a,),(d,1) deletemin (a,) (d,1) relax a 3 b (b,),(d,1) deletemin (b,) (d,1) relax b c (c,7),(d,1) relax b 1 e (e,6),(c,7),(d,1) deletemin (e,6) (c,7),(d,1) relax e 9 b (c,7),(d,1) relax e 8 c (c,7),(d,1) relax e d (d,6),(c,7) deletemin (d,6) (c,7) relax d 4 (c,7) relax d b (c,7) deletemin (c,7) KIT Intitut für Theoretiche Informatik 3
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
MehrEffiziente Algorithmen und Datenstrukturen: Kürzeste Wege
Effiziente Algorithmen und Datenstrukturen: Kürzeste Wege Kürzeste Wege Zentrale Frage: Wie komme ich am schnellsten von A nach B? B A Kürzeste Wege Zentrale Frage: Wie komme ich am schnellsten von A nach
MehrCustomization (Zuschneiden)
Customization (Zuschneiden) Anpassen der (Graph)Datenstruktur an die Anwendung. I Ziel: schnell, kompakt. I benutze Entwurfsprinzip: make the common case fast I Listen vermeiden Mögliches Problem: Software-Engineering-Alptraum
MehrADS: 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
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Wintersemester 2012/13 22. Vorlesung Tiefensuche und Topologische Sortierung Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Vorlesungsumfrage Nutzen Sie die Vorlesungsbefragung
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Wdhlg.: Dijkstra-Algorithmus I Bestimmung der
Mehr9. Übung Algorithmen I
INSTITUT FÜR THEORETISCHE INFORMATIK 1 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft Institut für Theoretische www.kit.edu Informatik Musterlösung
MehrErinnerung VL
Erinnerung VL 06.06.06 Sortierte Folgen: eierlegende Wollmilchsau Suchbäume: binäre und (a, b)-bäume (a, b)-bäume: remove, insert etwas kompliziert (balancieren), aber in logarithmischer Zeit möglich Heute:
Mehr11. Übungsblatt zu Algorithmen I im SS 2010
Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders G.V. Batz, C. Schulz, J. Speck 11. Übungsblatt zu Algorithmen I im SS 2010 http://algo2.iti.kit.edu/algorithmeni.php
Mehr3.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
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
Mehr2. Übungsblatt zu Algorithmen II im WS 2016/2017
Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders Dr. Christian Schulz, Dr. Simon Gog Michael Axtmann. Übungsblatt zu Algorithmen II im WS 016/017 Aufgabe
MehrDefinition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.
Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.
MehrGraphen: 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.
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen 2 Teil 5 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität
Mehr5.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!
Mehr8 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
Mehr8 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
MehrMinimal spannende Bäume
http://www.uni-magdeburg.de/harbich/ Minimal spannende Fakultät für Informatik Otto-von-Guericke-Universität 2 Inhalt Definition Wege Untergraphen Kantengewichtete Graphen Minimal spannende Algorithmen
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 4 Programm des
MehrKapitel 4: Minimal spannende Bäume Gliederung der Vorlesung
Kapitel : Minimal spannende Bäume Gliederung der Vorlesung. Fallstudie Bipartite Graphen 2. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Wege. Traveling
MehrGraphen. Leonhard Euler ( )
Graphen Leonhard Euler (1707-1783) 2 Graph Ein Graph besteht aus Knoten (nodes, vertices) die durch Kanten (edges) miteinander verbunden sind. 3 Nachbarschaftsbeziehungen Zwei Knoten heissen adjazent (adjacent),
MehrKapitel 4: Minimale spannende Bäume Gliederung der Vorlesung
Kapitel : Minimale spannende Bäume Gliederung der Vorlesung. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman
MehrAlgorithmen 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
MehrMaximaler Fluss = minimaler Schnitt
Maximaler Flu = minimaler Schnitt Oliver Junge Fakultät für Mathematik Techniche Univerität München Flüe in Netzwerken Mathematiche Abtraktion Kapazität 3 2 Quelle 5 Senke 1 2 Netzwerk gerichteter Graph
MehrChristian Schulz und Johannes Singler
Christian Schulz und Johannes Singler, Prof. Sanders 1 KIT Christian Universität des Schulz Landes Baden-Württemberg und Johannes undsingler: nationales 3. Übung Forschungszentrum Algorithmen in der Helmholtz-Gemeinschaft
MehrErinnerung VL
Erinnerung VL 30.05.2016 Radix-Sort, Abschluss Sortieren Prioritätslisten: Warteschlange mit Prioritäten deletemin: kleinstes Element rausnehmen insert: Element einfügen Binäre Heaps als Implementierung
MehrAlgorithmentheorie. 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
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesungen 5 und 6 Programm
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Traversierung Durchlaufen eines Graphen, bei
MehrMinimum Spanning Tree
1.5 1.5 1.0 0.75.0 0.75 Gegeben ein Graph G = (V, E). Die Knotenmenge V repräsentiere eine Menge von Spezies. Jede Kante e = (v,u) ist beschriftet mit der evolutionäre Distanz w(v,u) (Kantengewicht) des
MehrPolygontriangulierung
Vorlesung Algorithmische Geometrie Polygone triangulieren INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.05.2012 Das Kunstgalerie-Problem Aufgabe: Installiere ein Kamerasystem
MehrAlgorithmen 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
MehrSortierte Folgen 250
Sortierte Folgen 250 Sortierte Folgen: he 1,...,e n i mit e 1 apple applee n kennzeichnende Funktion: M.locate(k):= addressof min{e 2 M : e k} Navigations Datenstruktur 2 3 5 7 11 13 17 19 00 Annahme:
MehrAlgorithmische 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
Mehr16. 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
MehrEin 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
Mehr3. 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
MehrDas Briefträgerproblem
Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................
MehrVorlesung 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?
MehrTermine für Übungstests. Kap. 3 Sortieren HeapSort ff Priority Queues. Motivation. Überblick. Analyse SiftDown
Kap. Sortieren..5 HeapSort ff..6 Priority Queues Professor Dr. Vorlesung am Do 7.5. entfällt wegen FVV um Uhr Lehrstuhl für Algorithm Engineering, LS Fakultät für nformatik, TU Dortmund 7. VO DAP SS 009
MehrAlgorithmen II Vorlesung am 15.11.2012
Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales
MehrDATENSTRUKTUREN UND ALGORITHMEN
DATENSTRUKTUREN UND ALGORITHMEN 2 Ist die Datenstruktur so wichtig??? Wahl der Datenstruktur wichtiger Schritt beim Entwurf und der Implementierung von Algorithmen Dünn besetzte Graphen und Matrizen bilden
MehrG : (V; E) mit E V V G : (V 1, V 2 ; E) mit E V 1 V 2 V 2 V 1 l(w) k i1 l(e i ) dist(u, v) 0 min(l(w) : W ist ein Weg von u nach v falls u v falls ein solcher Weg existiert sonst v 1 V v i V (i
MehrWS 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
MehrInformatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 13 (18.6.2014) Binäre Suchbäume IV (Rot Schwarz Bäume) Algorithmen und Komplexität Rot Schwarz Bäume Ziel: Binäre Suchbäume, welche immer
MehrTheoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke
Theoretische Informatik 1 WS 2007/2008 Prof. Dr. Rainer Lütticke Inhalt der Vorlesung Grundlagen - Mengen, Relationen, Abbildungen/Funktionen - Datenstrukturen - Aussagenlogik Automatentheorie Formale
MehrAlgorithmen und Datenstrukturen in der Bioinformatik Viertes Übungsblatt WS 05/06 Musterlösung
Konstantin Clemens Johanna Ploog Freie Universität Berlin Institut für Mathematik II Arbeitsgruppe für Mathematik in den Lebenswissenschaften Algorithmen und Datenstrukturen in der Bioinformatik Viertes
MehrGliederung. 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
MehrGraphen. Formale Methoden der Informatik WiSe 2010/2011 teil 2, folie 1 (von 60)
Graphen Formale Methoden der Informatik WiSe 2010/2011 teil 2, folie 1 (von 60) Teil II: Graphen 1. Einführung 2. Wege und Kreise in Graphen, Bäume 3. Planare Graphen / Traveling Salesman Problem 4. Transportnetzwerke
MehrAlgorithmische 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
Mehr4. Kreis- und Wegeprobleme Abstände in Graphen
4. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 4.4. Es sei G = (V,E) ein Graph. Der Abstand d(v,w) zweier Knoten v,w V ist die minimale Länge eines Weges von v nach w. Falls
MehrSS11 Effiziente Algorithmen 5. Kapitel: Dynamische Programmierung
SS11 Effiziente Algorithmen 5. Kapitel: Dynamische Programmierung Martin Dietzfelbinger Juni/Juli 2011 FG KTuEA, TU Ilmenau Effiziente Algorithmen SS11 Kapitel 5 Kapitel 5: Dynamische Programmierung Typische
MehrDynamische 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
MehrMaximale s t-flüsse in Planaren Graphen
Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen June 1, 2015 Ignaz Rutter INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg
Mehr4 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
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Algorithmen für Graphen Fragestellungen: Suche
MehrOverview. Testen von Planarität. Planare Graphen. Beliebige Knotenpositionen. Gerade Linien. Faces
Overview Testen von Planarität Markus Chimani LS XI Algorithm Engineering, TU Dortmund VO Automatisches Zeichnen von Graphen 15 Planarität Grundbegriffe Wie erkennt man Planarität Boyer-Myrvold Überblick
Mehr2 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
MehrUniversität des Saarlandes
Universität des Saarlandes FR 6.2 Informatik Prof. Dr. Kurt Mehlhorn WiSe 2015/2016 Übungen zu Ideen der Informatik http://www.mpi-inf.mpg.de/departments/algorithms-complexity/teaching/winter15/ideen/
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Pfade. Traveling Salesman Problem. Flüsse in Netzwerken
MehrMafI I: Logik & Diskrete Mathematik (F. Hoffmann)
Lösungen zum 14. und letzten Aufgabenblatt zur Vorlesung MafI I: Logik & Diskrete Mathematik (F. Hoffmann) 1. Ungerichtete Graphen (a) Beschreiben Sie einen Algorithmus, der algorithmisch feststellt, ob
MehrFlü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
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 15: Graphen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik
MehrS=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J
Greedy-Strategie Definition Paradigma Greedy Der Greedy-Ansatz verwendet die Strategie 1 Top-down Auswahl: Bestimme in jedem Schritt eine lokal optimale Lösung, so dass man eine global optimale Lösung
MehrInformatik 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
MehrKapitel 12: Schnelles Bestimmen der Frequent Itemsets
Einleitung In welchen Situationen ist Apriori teuer, und warum? Kapitel 12: Schnelles Bestimmen der Frequent Itemsets Data Warehousing und Mining 1 Data Warehousing und Mining 2 Schnelles Identifizieren
MehrInformatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 10 (3.6.2014) Binäre Suchbäume I Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:
MehrProseminar Online Algorithmen, Prof. Dr. Rolf Klein
Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Vortrag von Michael Daumen am 13.12.2000 Thema : Minimum Spanning Tree und 2-Approximation der TSP-Tour Inhalt des Vortrags : 1. genaue Vorstellung des
MehrWiederholung 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:
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Werner Struckmann Wintersemester 2005/06 8. Graphen 8.1 Mathematische Grundlagen 8.2 Darstellung von Graphen 8.3 Ausgewählte Algorithmen für ungewichtete Graphen 8.4 Ausgewählte
MehrKapitel 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
MehrBinary Decision Diagrams (Einführung)
Binary Decision Diagrams (Einführung) Binary Decision Diagrams (BDDs) sind bestimmte Graphen, die als Datenstruktur für die kompakte Darstellung von booleschen Funktionen benutzt werden. BDDs wurden von
MehrSingle Source Sortest Path Negative Kreise All-Pair Shortest Path Problem Minimum Mean Cycle Zusammenfassung. Shortest Paths
Shortest Paths Label Correcting Algorithms Florian Reitz Universität Trier Fachbereich IV Fach Informatik Seminar Netzwerkalgorithmen WS 2005/2006 Einleitung: Problemübersicht Eben: Schnelle Algorithmen
MehrAlgorithmen und Datenstrukturen Kapitel 10
Algorithmen und Datenstrukturen Kapitel 10 Flüsse Frank Heitmann heitmann@informatik.uni-hamburg.de 6. Januar 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/8 Flüsse Graphen Grundlagen Definition
MehrRandomisierte 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
MehrC++, 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
MehrÜberblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP
Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick
MehrKV Software Engineering Übungsaufgaben SS 2005
KV Software Engineering Übungsaufgaben SS 2005 Martin Glinz, Silvio Meier, Nancy Merlo-Schett, Katja Gräfenhain Übung 1 Aufgabe 1 (10 Punkte) Lesen Sie das Originalpapier von Dijkstra Go To Statement Considered
Mehrκ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).
5. Graphenprobleme Im folgenden bezeichnen G = (E, K) einen endlichen Graphen mit der Eckenmenge E und der Kantenmenge K. G kann ungerichtet, gerichtet, schlicht oder nicht schlicht sein. 5.1 Spannende
MehrDu hast schon einige Möglichkeiten kennen gelernt, um einen Satz in eine Frage zu verwandeln:
Fragen mit do/doe Du hat chon einige Möglichkeiten kennen gelernt, um einen Satz in eine Frage zu verwandeln: Bp.: We can play football in the garden. Can we play football in the garden? I mut learn the
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2010
Mehr11.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
MehrLiteratur. 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,
MehrFully dynamic algorithms for the single source shortest path problem.
Fully dynamic algorithms for the single source shortest path problem. Michael Baur Wintersemester 2001/2002 Zusammenfassung Im folgenden Paper werde ich Algorithmen für das dynamische Kürzeste-Wege-Problem
MehrTECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 11 Prof. Dr. Helmut Seidl, S. Pott,
MehrLernmodul 2 Graphen. Lernmodul 2: Geoobjekte und ihre Modellierung - Graphen
Folie 1 von 20 Lernmodul 2 Graphen Folie 2 von 20 Graphen Übersicht Motivation Ungerichteter Graph Gerichteter Graph Inzidenz, Adjazenz, Grad Pfad, Zyklus Zusammenhang, Trennende Kante, Trennender Knoten
Mehr6. Übung zur Linearen Optimierung SS08
6 Übung zur Linearen Optimierung SS08 1 Sei G = (V, E) ein schlichter ungerichteter Graph mit n Ecken und m Kanten Für eine Ecke v V heißt die Zahl der Kanten (u, v) E Grad der Ecke (a) Ist die Anzahl
Mehr6. Flüsse und Zuordnungen
6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über solch eine Kante pro Zeiteinheit transportiert werden können. Wir können uns einen
MehrBranch-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.
MehrINSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS
Julian Arz, Timo Bingmann, Sebastian Schlag INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Julian Universität Arz, des Timo LandesBingmann, Baden-Württemberg Sebastian und Schlag nationales
MehrAutonome Mobile Systeme
Autonome Mobile Syteme Teil II: Sytemtheorie für Informatiker Dr. Mohamed Oubbati Intitut für Neuroinformatik Univerität Ulm SS 2007 Warum Sytemtheorie? Informatiker werden zunehmend mit Sytemen konfrontiert,
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Binärbaum Suchbaum Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 356 Datenstruktur Binärbaum Strukturrepräsentation des mathematischen Konzepts Binärbaum
MehrBreiten- 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
MehrEffiziente 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
MehrEinführung in Approximative Algorithmen und Parametrisierte Komplexität
Einführung in Approximative Algorithmen und Parametrisierte Komplexität Tobias Lieber 10. Dezember 2010 1 / 16 Grundlegendes Approximationsalgorithmen Parametrisierte Komplexität 2 / 16 Grundlegendes Definition
MehrTechnische 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
MehrAnwendungen von Netzwerkfluss. Wojciech Polcwiartek Institut für Informatik FU Berlin
Anwendungen von Netzwerkfluss Wojciech Polcwiartek Institut für Informatik FU Berlin 13. 01. 2009 Gliederung Einführung Netzwerk, Fluss und Schnitt Max-Flow-Min-Cut Theorem Algorithmen zum Bestimmen vom
MehrVorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg 19.04.2011
Vorlesung Algorithmische Geometrie LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 19.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei
MehrKapitel 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