23. Kürzeste Wege. Flussüberquerung (Missionare und Kannibalen) Das ganze Problem als Graph. Formulierung als Graph
|
|
- Imke Dittmar
- vor 6 Jahren
- Abrufe
Transkript
1 Fluüberquerung (Miionare und Kannibalen). Kürzete Wege Problem: Drei Kannibalen und drei Miionare tehen an einem Ufer eine Flue. Ein dort bereittehende Boot fat maimal zwei Peronen. Zu keiner Zeit dürfen an einem Ort (Ufer oder Boot) mehr Kannibalen al Miionare ein. Wie kommen die Miionare und Kannibalen möglicht chnell über den Flu? Motivation, Dijktra Algorithmu auf Ditanzgraphen, Algorithmu von Bellman-Ford, Algorithmu von Floyd-Warhall [Ottman/Widmayer, Kap. 9. Cormen et al, Kap ,.-.] K K K M M M B 644 E gibt leichte Variationen diee Problem, e it auch äquivalent zum Problem der eiferüchtigen Ehemänner 64 Formulierung al Graph Zähle alle erlaubten Konfigurationen al Knoten auf und verbinde diee mit einer Kante, wenn Überfahrt möglich it. Da Problem it dann ein Problem de kürzeten Pfade Beipiel Da ganze Problem al Graph link recht Miionare 0 Kannibalen 0 Boot Überfahrt möglich link recht Miionare Kannibalen Boot 6 Peronen am linken Ufer 4 Peronen am linken Ufer
2 Beipiel Schiebepuzzle Problem al Graph Wollen die chnellete Löung finden für Routenfinder Gegeben Städte A - Z und Ditanzen zwichen den Städten. D 4 4 Einfachter Fall Kontante Kantengewicht (obda) Löung: Breitenuche B G 8 A 6 E I Z C H 7 4 S t F Wa it der kürzete Weg von A nach Z? 60 6
3 Poitiv gewichtete Graphen Beobachtung Gegeben: G = (V, E, c), c : E R +,, t V. Geucht: Länge eine kürzeten Wege (Gewicht) von nach t. Weg: = v 0, v,..., v k = t, (v i, v i+ ) E (0 i < k) Gewicht: k i=0 c((v i, v i+ )) u v 4 7 obere Schranken t t w kleinte obere Schranke globale Minimum! S Weg mit Gewicht Grundidee Eitenz eine kürzeten Wege Menge V aller Knoten wird unterteilt in die Menge M von Knoten, für die chon ein kürzeter Weg von bekannt it die Menge R = v M N + (v) \ M von Knoten, für die kein kürzeter Weg bekannt it, die jedoch von M direkt erreichbar ind. die Menge U = V \ (M R) von Knoten, die noch nicht berückichtigt wurden. Annahme: E eitiert ein Weg von nach t in G Behauptung: E gibt einen kürzeten Weg nach t in G Bewei: E kann zwar unendlich viele Wege von nach t geben. Da aber c poitiv it, it ein kürzeter Weg zyklufrei. Damit it die Maimallänge eine kürzeten Wege durch ein n N bechränkt und e gibt nur endlich viele Kandidaten für kürzete Wege. Bemerkung: e kann eponentiell viele Wege geben. Beipiel t 64 6
4 Induktion Algorithmu Dijktra(G, ) Induktion über M : Wähle Knoten au R mit kleinter oberer Schranke. Nimm r zu M hinzu, und update R und U. Korrektheit: It innerhalb einer Wellenfront einmal ein Knoten mit minimalem Pfadgewicht gefunden, kann kein Pfad gröeren Gewicht über andere Knoten zu einer Verbeerung führen. Input : Poitiv gewichteter Graph G = (V, E, c), Startpunkt V Output : Minimale Gewichte d der kürzeten Pfade. M = {}; R = N + (), U = V \ R d() 0; d(u) u while R do r arg min r R min m N (r) M d(m) + c(m, r) d(r) min m N (r) M d(m) + c(m, r) M M {r} R R {r} N + (r) \ M return d Beipiel Zur Implementation: Naive Variante 0 a 6 c 8 e M = {, a} R = {b, c} U = {d, e} Minimum finden: Alle Kanten (u, v) für u M, v R durchlaufen. Geamtkoten: O( V E ) b d 68 69
5 Zur Implementation: Beere Variante Update aller augehenden Kanten beim Einfügen eine neuen w in M: foreach (w, v) E do if d(w) + c(w, v) < d(v) then d(v) d(w) + c(w, v) Updatekoten: O( E ), Minima finden: O( V ), alo Geamtkoten O( V ) Zur Implementation: Datentruktur für R? Benötigte Operationen: EtractMin (über R) DecreaeKey (Update in R) foreach (m, v) E do if d(m) + c(m, v) < d(v) then d(v) d(m) + c(m, v) if v R then DecreaeKey(R, v) ele R R {v} // Update eine d(v) im Heap zu R // Einfügen eine neuen d(v) im Heap zu R 660 Heap Datentruktur bietet ich an. Problem: Unklar, wo v in R teht (für DecreaeKey). 66 DecreaeKey Laufzeit DecreaeKey: Aufteigen im MinHeap in O(log V ) Poition im Heap, Möglichkeit (a): Speichern am Knoten Poition im Heap, Möglichkeit (b): Hahtabelle über Knoten V EtractMin: O( V log V ) E Inert oder DecreaeKey: O( E log V ) Init: O( V ) Ingeamt: O( E log V ). Kann verbeert werden unter Verwendung einer für EtractMin und DecreaeKey optimierten Datentruktur (Fibonacci Heap), dann Laufzeit O( E + V log V )
6 Kürzeten Weg Rekontruieren Beipiel Beim Updatechritt im obigen Algorithmu jeweil beten Vorgänger merken, an Knoten oder in eparater Datentruktur. Beten Pfad rekontruieren durch Rückwärtlaufen der beten Kanten 0 a 6 c 8 e M = {, a, b} R = {c, d} U = {e} b d Allgemeine Bewertete Graphen Beobachtungen Relaieren geht genauo: Rela(u, v) (u, v V, (u, v) E) if d (v) > d (u) + c(u, v) then d (v) d (u) + c(u, v) return true return fale Problem: Zyklen mit negativen Gewichten können Weg verkürzen: e mu keinen kürzeten Weg mehr geben u d (u) v d (v) Beobachtung : Teilpfade von kürzeten Pfaden ind kürzete Pfade: Sei p = v 0,..., v k ein kürzeter Pfad von v 0 nach v k. Dann it jeder der Teilpfade p ij = v i,..., v j (0 i < j k) ein kürzeter Pfad von v i nach v j. Bewei: wäre da nicht o, könnte man einen der Teilpfade kürzen, Widerpruch zur Vorauetzung. Beobachtung : Wenn e einen kürzeten Weg gibt, dann it dieer einfach, hat alo keine doppelten Knoten. Folgt direkt au Beobachtung
7 Dynamic Programming Anatz (Bellman) Dynamic Programming Anatz (Bellman) Induktion über Anzahl Kanten. d [i, v]: Kürzete Weglänge von nach v über maimal i Kanten. d [i, v] = min{d [i, v], min (u,v) E (d [i, u] + c(u, v)) d [0, ] = 0, d [0, v] = v. v w n 0 Algorithmu: Iteriere über letzte Zeile bi die Relaationchritte keine Änderung mehr ergeben, maimal aber n mal. Wenn dann noch Änderungen, dann gibt e keinen kürzeten Pfad. 4 7 u w v Algorithmu Bellman-Ford(G, ) Input : Graph G = (V, E, c), Startpunkt V Output : Wenn Rückgabe true, Minimale Gewichte d der kürzeten Pfade zu jedem Knoten, ont kein kürzeter Pfad. d(v) v V ; d() 0 for i to V do f fale foreach (u, v) E do f f Rela(u, v) if f = fale then return true return fale; Alle kürzeten Pfade Ziel: Berechne da Gewicht eine kürzeten Pfade für jede Knotenpaar. V Anwendung von Dijktra ShortetPath: O( V E log V ) (Mit Fibonacci-Heap:: O( V log V + V E )) V Anwendung von Bellman-Ford: O( E V ) E geht beer! Laufzeit O( E V )
8 Induktion über Knotennummer. DP Induktion Betrachte die Gewichte aller kürzeten Wege S k mit Zwichenknoten in V k := {v,..., v k }, wenn Gewichte zu allen kürzeten Wegen S k mit Zwichenknoten in V k gegeben ind. v k kein Zwichenknoten eine kürzeten Pfade von v i v j in V k : Gewicht eine kürzeten Pfade v i v j in S k dann auch da Gewicht eine kürzeten Pfade in S k. v k Zwichenknoten eine kürzeten Pfade v i v j in V k : Teilpfade v i v k und v k v j enthalten nur Zwichenknoten au S k. d k (u, v) = Minimale Gewicht eine Pfade u v mit Zwichenknoten au V k Induktion d k (u, v) = min{d k (u, v), d k (u, k) + d k (k, v)}(k ) d 0 (u, v) = c(u, v) wie beim Algorithmu für die refleive tranitive Hülle von Warhall DP Algorithmu Floyd-Warhall(G) Umgewichtung Input : Azyklicher Graph G = (V, E, c) Output : Minimale Gewichte aller Pfade d d 0 c for k to V do for i to V do for j to V do d k (v i, v j ) = min{d k (v i, v j ), d k (v i, v k ) + d k (v k, v j )} Idee: Anwendung von Dijktra Algorithmu auf Graphen mit negativen Gewichten durch Umgewichtung Da folgende geht nicht. Die Graphen ind nicht äquivalent im Sinne der kürzeten Pfade. t t Laufzeit: Θ( V ) Bemerkung: Der Algorithmu kann auf einer einzigen Matri d (in place) augeführt werden. u v c c+ = u v
9 Umgewichtung Andere Idee: Potentialfunktion (Höhe) auf den Knoten G = (V, E, c) ein gewichteter Graph. Funktion h : V R Neue Gewichte c(u, v) = c(u, v) + h(u) h(v), (u, v V ) Umgewichtung Beobachtung: Ein Pfad p it genau dann kürzeter Pfad in G = (V, E, c), wenn er in G = (V, E, c) kürzeter Pfad it. c(p) = k c(v i, v i ) = i= = h(v 0 ) h(v k ) + k c(v i, v i ) + h(v i ) h(v i ) i= k c(v i, v i ) = c(p) + h(v 0 ) h(v k ) i= Alo c(p) minimal unter allen v 0 v k c(p) minimal unter allen v 0 v k. Zyklengewichte ind invariant: c(v 0,..., v k = v 0 ) = c(v 0,..., v k = v 0 ) Johnon Algorithmu Hinzunahme eine neuen Knoten V : G = (V, E, c ) V = V {} E = E {(, v) : v V } c (u, v) = c(u, v), u c (, v) = 0(v V ) Johnon Algorithmu Fall keine negativen Zyklen: wähle für Höhenfunktion Gewicht der kürzeten Pfade von, h(v) = d(, v). Für minimale Gewicht d eine Pfade gilt generell folgende Dreieckungleichung: d(, v) d(, u) + c(u, v). Einetzen ergibt h(v) h(u) + c(u, v). Damit c(u, v) = c(u, v) + h(u) h(v)
10 Algorithmu Johnon(G) Input : Gewichteter Graph G = (V, E, c) Output : Minimale Gewichte aller Pfade D. Neuer Knoten. Berechne G = (V, E, c ) if BellmanFord(G, ) = fale then return graph ha negative cycle foreach v V do h(v) d(, v) // d au BellmanFord Algorithmu foreach (u, v) E do c(u, v) c(u, v) + h(u) h(v) foreach u V do d(u, ) Dijktra( G, u) foreach v V do D(u, v) d(u, v) + h(v) h(u) Analye Laufzeiten Berechnung von G : O( V ) Bellman Ford G : O( V E ) V Dijktra O( V E log V ) (Mit Fibonacci-Heap:: O( V log V + V E )) Ingeamt O( V E log V ) (O( V log V + V E ))
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
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!
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
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:
MehrDas Briefträgerproblem
Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................
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:
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
MehrKü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
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
MehrBeispiellösungen zu Blatt 84
µatheaticher κorrepondenz- zirkel Matheatiche Intitut Georg-Augut-Univerität Göttingen Aufgabe 1 Beipiellöungen zu Blatt 84 Welche der folgenden Zahlen it größer? 2009 + 2010 + 2010 + 2009, 2009 + 2009
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
MehrAufnahmeprüfung FHNW 2013: Physik
Muterlöungen Phyik Aufnahmeprüfung FHW 03 Aufnahmeprüfung FHW 03: Phyik Aufgabe Da nebentehende Diagramm zeigt den Gechwindigkeit-Zeit-Verlauf für ein Schienenfahrzeug. a ) Skizzieren Sie qualitativ richtig
MehrLehreinheit 09 Prozesssimulation II: Prozesssimulation mit einfachen Petri-Netzen Wintersemester 2012/2013
Dynamiche Unternehmenmodellierung und -imulation (ehemal: Buine Dynamic - Dynamiche Modellierung und Simulation komplexer Gechäftyteme, Arbeitwienchaft V) Lehreinheit 09 Prozeimulation : Prozeimulation
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.
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
MehrBabeș-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
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 & 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
MehrProgrammierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.
1 Programmierung 2 Dynamische Programmierung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 2 Übersicht Stammt aus den Zeiten als mit Programmierung
Mehr- k Maximalwerte aus Menge mit n >> k Elementen (Rangfolgebestimmung von Suchmaschinen!) Die typische Operationen:
6 Partiell geordnete binäre Bäume: Heap (Haufen) Motivation für manchen Anwendungen nur partielle Ordnung der Elemente statt vollständiger nötig, z.b. - Prioritätsschlange: nur das minimale (oder maximale)
MehrWertsteigerung Frei Haus. Der Kostenlose Glasfaseranschluss für Hauseigentümer.
Wertteigerung Frei Hau. Der Kotenloe Glafaeranchlu für Haueigentümer. Darüber freuen ich nicht nur Ihre Mieter. 40 Millimeter, 1.000 Vorteile. Im Bereich der Kommunikation it Glafaer die Zukunft. 12.000
Mehr13. 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),
Mehr10 Dynamische Programmierung
137 Dynamische Programmierung Das Prinzip der Dynamischen Programmierung wird häufig bei Fragestellungen auf Worten angewendet..1 Längste gemeinsame Teilfolge Wir betrachten Worte der rt w = a 1 a 2 a
MehrSuche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20
Suche in Spielbäumen Suche in Spielbäumen KI SS2011: Suche in Spielbäumen 1/20 Spiele in der KI Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche Einschränkung von Spielen auf: 2 Spieler:
MehrDatenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de
Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Wiederholung: Anfragegraph Anfragen dieses Typs können als Graph dargestellt werden: Der
MehrEntscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?
Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum
MehrAbschnitt: Algorithmendesign und Laufzeitanalyse
Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher
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
MehrAlgorithmen 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
Mehr1. 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
MehrSuchen und Sortieren Sortieren. Heaps
Suchen und Heaps (Folie 245, Seite 63 im Skript) 3 7 21 10 17 31 49 28 14 35 24 42 38 Definition Ein Heap ist ein Binärbaum, der die Heapeigenschaft hat (Kinder sind größer als der Vater), bis auf die
MehrAnmerkungen 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
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,
MehrBestimmung der Messunsicherheit
Betimmung der Meunicherheit 1 Arten der Meabweichungen 1.1 Grobe Abweichungen Urachen Verehen de Beobachter bei Bedienung/Ableung der Meintrumente Irrtum de Beobachter bei Protokollierung/Auwertung der
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
MehrHEUTE. 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
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
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?
MehrUndirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time
Universität Konstanz Mathematisch-naturwissenschaftliche Sektion Fachbereich Mathematik und Statistik Wintersemester 2001/02 Mikkel Thorup: Undirected Single-Source Shortest Paths with Positive Integer
MehrGrundlagen der Informatik III Wintersemester 2010/2011
Grundlagen der Informatik III Winteremeter 2010/2011 Wolfgang Heene, Patrik Schmittat 8. Aufgabenblatt mit Löungvorchlag 10.01.2011 Hinwei: Der Schnelltet und die Aufgaben ollen in den Übunggruppen bearbeitet
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
MehrMaximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de
Maximaler Fluß und minimaler Schnitt Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Wasist das? Maximaler Fluss Minimaler Schnitt Warumtut man das? Logistische
MehrIn welcher Zeit könnte der Sportwagen demnach von 0 auf 100 km beschleunigen?
Arbeit, Leitung und Wirkunggrad und Energie. Welche Leitung erbringt ein Auto da bei einer geamten Fahrwidertandkraft von 200 N mit einer Gechwindigkeit von 72 km fährt? h 2: Ein Latkran wird mit einem
MehrDie k kürzesten Wege in gerichteten Graphen
Die k kürzesten Wege in gerichteten Graphen Marc Benkert Wintersemester 001/00 1 Einführung 1.1 Problemstellung In einem gerichteten, gewichteten Graphen G = (V, E) sollen die k kürzesten Wege zu zwei
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
MehrPunktbeschriftung in Dynamischen Karten
Vorlesung Algorithmische Kartografie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Benjamin Niedermann Martin Nöllenburg 28.05.2015 1 Übungen Nachtrag 1) Überlegen Sie sich, wie man den
MehrDatenstruktur, die viele Operationen dynamischer Mengen unterstützt
Algorithmen und Datenstrukturen 265 10 Binäre Suchbäume Suchbäume Datenstruktur, die viele Operationen dynamischer Mengen unterstützt Kann als Wörterbuch, aber auch zu mehr eingesetzt werden (Prioritätsschlange)
MehrTechnische Universität München. Fakultät für Informatik
Techniche Univerität München Fakultät für Informatik Forchung- und Lehreinheit Informatik IX Thema: Morphologiche Operationen Proeminar: Grundlagen Bildvertehen/Bildgetaltung Johanne Michael Kohl Betreuer:
MehrGuten 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
MehrSteinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering
Steinerbäume Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Verfasser Flamur Kastrati Betreuer Prof. Dr. habil. Thomas
MehrVorlesung 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
MehrMit Strategie zum Erfolg
Mit Strategie zum Erfolg Brückenbauer zwichen Betriebwirtchaft und Informatik Wir befaen un eit vielen Jahren konequent mit Betriebwirtchaft. Unere Werkzeuge ind Software- und Hardware-Löungen der jüngten
MehrVersuch 16 (früher I9) Aufbauten 16/36 (früher I7a/I7b) Logikschaltungen mit dem Bipolartransistor
Hochchule Augburg Veruch 16 (früher I9) Aufbauten 16/36 (früher I7a/I7b) Logikchaltungen mit dem Bipolartranitor Phyikaliche Praktikum Die Funktionweie von Bipolartranitoren ollte vor Veruch 9 im Theorieteil
MehrEnergiefreisetzung In der Sonne, wie in allen anderen Sternen auch, wird die Energie durch Kernfusion freigesetzt. Wasserstoffkerne(Protonen) können
Energiefreietzung In der Sonne, wie in allen anderen Sternen auch, wird die Energie durch Kernfuion freigeetzt. Waertoffkerne(Protonen) können bei güntigen Bedingungen zu Heliumkernen verchmelzen, dabei
MehrModelle und Statistiken
Kapitel 4 Modelle und Statistiken In letzter Zeit werden vermehrt Parameter (Gradfolgen, Kernzahlfolgen, etc.) empirischer Graphen (Internet, WWW, Proteine, etc.) berechnet und diskutiert. Insbesondere
MehrKap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis
Kap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 13./14. VO DAP2 SS 2009 2./4. Juni 2009 1 2. Übungstest
Mehr6. Klasse 1. Schularbeit 1999-10-20 Gruppe A + 40.! Bestimme das Monotonieverhalten und berechen den Grenzwert! 4 Punkte
6. Klae 1. Schularbeit 1999-10-0 Gruppe A 1) Betrachte da Wettrennen zwichen Achille und der Schildkröte für folgende Angaben: Gechwindigkeit von Achille 10 m, Gechwindigkeit der Schildkröte m Vorprung
MehrTeil 2 - Softwaretechnik. Modul: Programmierung B-PRG Grundlagen der Programmierung 1 Teil 2. Übersicht. Softwaretechnik
Grundlagen der Programmierung 1 Modul: Programmierung B-PRG Grundlagen der Programmierung 1 Teil 2 Softwaretechnik Prof. Dr. O. Drobnik Professur Architektur und Betrieb verteilter Systeme Institut für
MehrSeminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn
Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Ein 5.55-Approximationsalgorithmus für das VPND-Problem Lars Schäfers Inhalt Einführung:
MehrTU Ilmenau Physikalisches Grundpraktikum Versuch O3 Institut für Physik. Mikroskop Seite 1
TU Ilmenau aliche Grundpraktikum Veruch O3 Mikrkp Seite 1 1. Aufgabentellung 1.1. Die rennweite f de Mikrkpbjektiv 8x it durch Meung der Abbildungmaßtäbe unterchiedliche Zwichenbildweiten zu betimmen.
MehrBinäre lineare Optimierung mit K*BMDs p.1/42
Binäre lineare Optimierung mit K*BMDs Ralf Wimmer wimmer@informatik.uni-freiburg.de Institut für Informatik Albert-Ludwigs-Universität Freiburg Binäre lineare Optimierung mit K*BMDs p.1/42 Grundlagen Binäre
MehrDatenstrukturen und Algorithmen SS07
Datenstrukturen und Algorithmen SS07 Datum: 27.6.2007 Michael Belfrage mbe@student.ethz.ch belfrage.net/eth Programm von Heute Online Algorithmen Update von Listen Move to Front (MTF) Transpose Approximationen
MehrMechanik 2. Addition von Geschwindigkeiten 1
Mechanik. Addition on Gechwindigkeiten 1. Addition on Gechwindigkeiten Wa beeinflut die Gechwindigkeit de Boote? a. Wind b. Waergechwindigkeit Haben beide die gleiche Richtung, o addieren ie ich. Haben
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.
MehrCodierung, Codes (variabler Länge)
Codierung, Codes (variabler Länge) A = {a, b, c,...} eine endliche Menge von Nachrichten (Quellalphabet) B = {0, 1} das Kanalalphabet Eine (binäre) Codierung ist eine injektive Abbildung Φ : A B +, falls
MehrConstraint-Algorithmen in Kürze - Mit der Lösung zur Path-Consistency-Aufgabe 9
Constraint-Algorithmen in Kürze - Mit der Lösung zur Path-Consistency-Aufgabe 9 Prof. Dr. W. Conen Version 1.0c Januar 2009 Genereller Ablauf der Suche Gegeben: Variablen X, Domains D, Constraints R (explizit
MehrSeminar Werkzeuggestütze. tze Softwareprüfung. fung. Slicing. Sebastian Meyer
Seminar Werkzeuggestütze tze Softwareprüfung fung Slicing Sebastian Meyer Überblick Einführung und Begriffe Static Slicing Dynamic Slicing Erweiterte Slicing-Techniken Fazit 2 Was ist Slicing?? (I) Program
MehrKapitel 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
MehrDatenstrukturen und Algorithmen
Datenstrukturen und Algorithmen VO 708.031 Bäume robert.legenstein@igi.tugraz.at 1 Inhalt der Vorlesung 1. Motivation, Einführung, Grundlagen 2. Algorithmische Grundprinzipien 3. Sortierverfahren 4. Halden
MehrNach der Bearbeitung dieses Kapitels soll der Leser in der Lage sein,
3 1 Einführung Nach der Bearbeitung diee Kapitel oll der Leer in der Lage ein, die Funktionen Invetition und Finanzierung in die Geamtheit der Betriebwirtchaftlehre einzuordnen, ihre Bedeutung für die
MehrHighway Hierarchies. Kristian Dannowski, Matthias Hoeschel
Highway Hierarchies Kristian Dannowski, Matthias Hoeschel Gliederung Einleitung / Bidirektional Dijkstra Intuition / Naive Strategie Konstruktion der Highway Hierarchie Suche in der Highway Hierarchie
MehrPHYSIK Geradlinige Bewegungen 3
7 PHYSIK Geradlinige Bewegungen 3 Gleichäßig bechleunigte Bewegungen it Anfanggechwindigkeit Datei Nr. 93 Friedrich W. Buckel Juli Internatgynaiu Schloß Torgelow Inhalt Grundlagen: Bechleunigte Bewegungen
MehrGrundlagen 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)
MehrTutorium 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
MehrKap. 4.2: Binäre Suchbäume
Kap. 4.2: Binäre Suchbäume Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 11. VO DAP2 SS 2009 26. Mai 2009 1 Zusätzliche Lernraumbetreuung Morteza Monemizadeh:
MehrStochastische Überraschungen beim Spiel BINGO
Stochatiche Überrachungen beim Spiel BINGO NORBERT HENZE, KARLSRUHE, UND HANS HUMENBERGER, WIEN Zuammenfaung: In dieem Beitrag wird da bekannte Spiel BINGO erläutert und näher analyiert. Augehend vom konkreten
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Institut für Innovatives Rehnen und Programmstrukturen (IPD) Übersetzerbau WS 2007/08 http://www.info.uni-karlsruhe.de/ Dozent: Prof. Dr.rer.nat. G. Goos goos@ipd.info.uni-karlsruhe.de
Mehrw a is die Anzahl der Vorkommen von a in w Beispiel: abba a = 2
1 2 Notation für Wörter Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg w a is die Anzahl der Vorkommen von a in w Beispiel: abba
MehrMotivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet.
bei TMs bei Computern Formale Grundlagen der Informatik 1 Kapitel 10 Frank Heitmann heitmann@informatik.uni-hamburg.de Bisher haben wir mit TMs Probleme gelöst/entschieden/berechnet. Dabei war entscheidbar
MehrLaufzeit und Komplexität
Laufzeit und Komplexität Laufzeit eines Algorithmus Benchmarking versus Analyse Abstraktion Rechenzeit, Anzahl Schritte Bester, Mittlerer, Schlechtester Fall Beispiel: Lineare Suche Komplexitätsklassen
MehrAVL-Bäume Analyse. Theorem Ein AVL-Baum der Höhe h besitzt zwischen F h und 2 h 1 viele Knoten. Definition Wir definieren die nte Fibonaccizahl:
AVL-Bäume Analyse (Folie 85, Seite 39 im Skript) Theorem Ein AVL-Baum der Höhe h besitzt zwischen F h und 2 h 1 viele Knoten. Definition Wir definieren die nte Fibonaccizahl: 0 falls n = 0 F n = 1 falls
MehrInformatik I WS 07/08 Tutorium 24
Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 20.12.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Rückblick Semi-Thue-Systeme Ein Semi-Thue-System besteht
MehrRandomisierte Algorithmen
Randomisierte Algorithmen Kapitel 2 Markus Lohrey Universität Leipzig http://www.informatik.uni-leipzig.de/~lohrey/rand WS 2005/2006 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/2006
MehrOrganic Computing: Peer-to-Peer-Netzwerke
Organic Computing Peer-to-Peer-Netzwerke Rolf Wanka Sommersemester 2015 rwanka@cs.fau.de Inhalte Kurze Geschichte der Peer-to-Peer- Netzwerke Das Internet: Unter dem Overlay Die ersten Peer-to-Peer-Netzwerke
MehrNP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)
NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP
MehrVergleich von Methoden zur Rekonstruktion von genregulatorischen Netzwerken (GRN)
Exposé zur Bachelorarbeit: Vergleich von Methoden zur Rekonstruktion von genregulatorischen Netzwerken (GRN) Fakultät: Informatik, Humboldt-Universität zu Berlin Lijuan Shi 09.05.2013 Betreuer: Prof. Dr.
MehrMessetraining: Unverzichtbarer Faktor für den richtigen Auftritt
1 von 5 Meetraining: Unverzichtbarer Faktor für den richtigen Auftritt Die Teilnahme an Meen laen ich Unternehmen richtig wa koten. Doch da bete Invetment verpufft, wenn nicht auch die Mannchaft am Stand
MehrAlgorithmen und Datenstrukturen SS09
Foliensatz 8 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 29 TU Ilmenau Seite / 54 Binärbäume TU Ilmenau Seite 2 / 54 Binäre Bäume Bäume und speziell
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
Mehr15 Optimales Kodieren
15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen
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
MehrSchnell und kosteneffizient. ELO E-Mail-Management. Die richtige Entscheidung für heute und morgen
E-Mail-Management E-Mail-Lifecycle-Management al Bai effizienter Gechäftprozee Schnell und koteneffizient Die richtige Entcheidung für heute und morgen Die Enterprie-Content-Management-Löungen (ECM) der
MehrHäufige Item-Mengen: die Schlüssel-Idee. Vorlesungsplan. Apriori Algorithmus. Methoden zur Verbessung der Effizienz von Apriori
Vorlesungsplan 17.10. Einleitung 24.10. Ein- und Ausgabe 31.10. Reformationstag, Einfache Regeln 7.11. Naïve Bayes, Entscheidungsbäume 14.11. Entscheidungsregeln, Assoziationsregeln 21.11. Lineare Modelle,
MehrSchaltwerke. e = 0 z. e = 0 1 z. z neu. z = z = z???? z(t + ) = z neu = z(t) Schaltnetze und Schaltwerke
Schaltweke Schaltnete und Schaltweke Schaltnete dienen u Becheibung deen, wa innehalb eine Poeotakt abläuft. Die akteit de Poeo mu imme etwa göße ein al die Signallaufeit de Schaltnete. Damit wid ichegetellt,
Mehr1. 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
MehrTechnische Daten und Messwerte
Eco Drive Opel Inignia und Der Inignia übetrifft den Paat zwar in der Länge, nicht jedoch bei Rauangebot brauchen verboten Neue Sparverionen von Opel Inignia und bieten Mittelklae-Kofort und brauchen o
MehrKurs 1612 Konzepte imperativer Programmierung Kurs 1613 Einführung in die imperative Programmierung
Aufgaben Aufgabe 1 Schreiben Sie eine PASCAL-Prozedur transponierematrix, die als Parameter eine quadratische Matrix von integer-werten erhält und diese Matrix transponiert, also die Zeilen und Spalten
MehrProgrammieren I. Kapitel 7. Sortieren und Suchen
Programmieren I Kapitel 7. Sortieren und Suchen Kapitel 7: Sortieren und Suchen Ziel: Varianten der häufigsten Anwendung kennenlernen Ordnung Suchen lineares Suchen Binärsuche oder Bisektionssuche Sortieren
MehrData Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY
Data Cube On-line Analytical Processing (OLAP). Einführung Ziel: Auffinden interessanter Muster in großen Datenmengen 2. Aggregation in SQL, GROUP BY 3. Probleme mit GROUP BY 4. Der Cube-Operator! Formulierung
Mehr3. Übung Algorithmen I
Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der
Mehr