Geometrische Algorithmen Voronoi-Diagramme. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Voronoi-Diagramme

Größe: px
Ab Seite anzeigen:

Download "Geometrische Algorithmen Voronoi-Diagramme. Lernmodul 7: Geo-Algorithmen und -Datenstrukturen - Voronoi-Diagramme"

Transkript

1 Folie 1 von 32 Geometrische Algorithmen Voronoi-Diagramme

2 Folie 2 von 32 Voronoi-Diagramme Übersicht Problemstellung Animation zur Konstruktion eines Voronoi-Diagramms Definition, Eigenschaften eines Voronoi-Diagramms Konstruktion des Voronoi-Diagramms Divide and Conquer Aufwand Konstruktion des Trennenden Kantenzugs Eigenschaften Animation Datenstruktur Worst Case Pseudocode: "Divide and Conquer", "Merge", "Tangente"

3 Folie 3 von 32 Problemstellung Welche Blume schnappt den Falter? 1x

4 Folie 4 von 32 Problemstellung Anwendungen Kollisionsproblem: Welche 2 Punkte haben den kleinsten Abstand (Roboter, Flugzeuge,...) Standortsuche: Wo wird die neue Filiale platziert... Filialenschließungsproblem: welches Paar von Filialen macht sich gegenseitig die größte Konkurrenz... Postamts-Problem: wo liegt das nächste Postamt (Krankenhaus,...) Einzugs- und Einflussgebiete von Versorgungsstationen (und ihre Größe) Bewertung von Standorten Modellierung von Nähe Delaunay-Triangulation Konvexe Hülle

5 Folie 5 von 32 Lösung Konstruktion eines Voronoi-Diagramms Interaktive Animation zum Voronoi-Diagramm Quelle: FernUniversität Hagen

6 Folie 6 von 32 Lösung Definition des Voronoi-Diagramms Gegeben ist eine Menge M von n Punkten in der Ebene. Das Voronoi-Diagramm der Punktmenge zerlegt die Ebene in n disjunkte Gebiete (Voronoi-Regionen). Die Voronoi-Region eines Punktes p enthält genau einen der Punkte aus M sowie alle Punkte q, die näher an p als an jedem anderen Punkt p liegen ("Gebiete gleicher nächster Nachbarn").

7 Folie 7 von 32 Lösung Bezeichnungen im Voronoi-Diagramm 3x

8 Folie 8 von 32 Lösung Konvexe Menge, Konvexe Hülle Konvexe Menge Eine Menge P von Punkten ist konvex, wenn zu jedem Punktepaar p und q auch die verbindende Strecke pq ganz in P enthalten ist. Konvexe Hülle Die konvexe Hülle CH(P) einer Punktemenge P ist die kleinste konvexe Menge, die alle Punkte aus P enthält.

9 Folie 9 von 32 Lösung Eigenschaften von Voronoi-Diagrammen Vereinfachende Annahme: Aus der gegebenen Punktmenge M liegen keine 4 Elemente auf einem gemeinsamen Kreis. In jedem Voronoi-Knoten treffen sich genau drei Kanten. Das Voronoi-Diagramm von n Punkten hat höchstens 2n 5 Knoten und 3n 6 Kanten (linear!). Die Knoten mit unbeschränkten Regionen bilden die konvexe Hülle. Der Duale Graph, bei dem benachbarte Punkte miteinander verbunden werden, bildet eine >>Delaunay-Triangulation.

10 Folie 10 von 32 Exkurs Delaunay-Triangulation Für Punktmengen gibt es verschiedene Triangulationen, die alle dieselbe Anzahl von Dreiecken enthalten. Die Delaunay-Triangulation ist die Triangulation, bei der in jedem Dreieck der kleinste Winkel maximal wird. Falls z.b. kleine Winkel unerwünscht sind (Numerik!), ist die Delaunay- Triangulation optimal. Anwendungsbeispiel: Ausgangssituation für die Interpolation von Isolinien

11 Folie 11 von 32 Vorgehen Konstruktion des Voronoi-Diagramms

12 Folie 12 von 32 Konstruktion Divide and Conquer 5x

13 Folie 13 von 32 Konstruktion Betrachtung der Teilschritte Input Sortiere aufsteigend nach x-koordinate Split Bestimme den Median Zerlege in annähernd gleich große Teilmengen links und rechts des Medians Merge Konstruktion des trennenden Kantenzuges Abschneiden überflüssiger Kanten Bildung der Voronoi-Regionen (wie bei Overlay-Algorithmus) Einfachster Fall von Merge: Die Teilmengen enthalten je einen Punkt. Der trennende Kantenzug ist die Mittelsenkrechte dieser Punkte

14 Folie 14 von 32 Konstruktion Aufwand Der Zyklus ist log n - mal zu durchlaufen Die gewünschte Laufzeit O(n * log n) wird erreicht, wenn Split and Merge nicht mehr als O(n) Schritte benötigen. Was ist das schwierigste Teilproblem?

15 Folie 15 von 32 Konstruktion Schwierigstes Teilproblem Einfach: Input Sortiere aufsteigend nach x-koordinate Einfach: Split Bestimme den Median Zerlege in annähernd gleich große Teilmengen links und rechts des Medians Schwierig: Merge Konstruktion des trennenden Kantenzuges Abschneiden überflüssiger Kanten Bildung der Voronoi-Regionen (wie bei Overlay-Algorithmus) Einfachster Fall von Merge: Die Teilmengen enthalten je einen Punkt. Der trennende Kantenzug ist die Mittelsenkrechte dieser Punkte

16 Folie 16 von 32 Vorgehen Konstruktion des trennenden Kantezugs

17 Folie 17 von 32 Trennender Kantenzug Eigenschaften monoton in Nord-Süd-Richtung jede Kante ist Grenze zwischen einer blauen und einer gelben Region (Mittelsenkrechte) die nördlichsten und südlichsten Teilstücke sind unbeschränkt, also Halbgeraden die zugehörigen Punkte bilden dort unbeschränkte Voronoi-Regionen die Punkte liegen also jeweils auf der blauen bzw. gelben konvexen Hülle Problem: Wie werden diese Punkte gefunden?

18 Folie 18 von 32 Trennender Kantenzug Gemeinsame Tangente die gesuchten Punkte werden über die gemeinsame Tangente an die konvexen Hüllen CH(P1) und CH(P2) identifiziert (Bestimmung der Tangente folgt später) konvexe Hülle der gesamten Punktmenge ergibt sich aus den Teilstrukturen durch Einfügen zweier zusätzlicher Kanten konvexe Hülle ist Abfallprodukt der Erzeugung des Voronoi-Diagramms synchrone Herleitung beider Strukturen

19 Folie 19 von 32 Trennender Kantezug Animation 75x

20 Folie 20 von 32 Voronoi-Diagramm Datenstruktur Doppelt verkettete Kantenliste (wie bei Polygon-Overlay) Vorteile: Direkter Zugriff auf die benachbarten Maschen Durchlaufen des Kantenumrings in linearer Zeit

21 Folie 21 von 32 Trennender Kantenzug Aufwand Wie lange dauert die Konstruktion des trennenden Kantenzuges? - Ziel war O(n) Aufwand ist abhängig von: Zahl der Teilkanten / Knoten des Kantenzuges Zahl Berechnungen von Schnittpunkten mit den benachbarten Voronoi-Regionen

22 Folie 22 von 32 Trennender Kantenzug Länge im Worst Case Länge des Kantenzuges: O(n)

23 Folie 23 von 32 Trennender Kantenzug Worst Case des Umrings Größenordnung des Umrings: O(n)

24 Folie 24 von 32 Trennender Kantenzug Worste Case gesamt O(n) * O(n) = O(n²)? War jetzt alles umsonst? Nutzung der Eigenschaften: 1. Voronoi-Regionen sind konvex 2. Der trennende Kantenzug ist monoton. Lösung: Keine Kante öfter als zweimal anfassen.

25 Folie 25 von 32 Trennender Kantenzug Vermeidung des Worst Case Ziel: Keine Kante mehr als zwei mal "anfassen" Es gibt insgesamt höchstens 3* n 6 Kanten: O(n) Konvexität der Voronoi-Regionen: höchstens zwei Schnittpunkte mit der aktiven Halbgeraden Es genügt, die linken Kantenumringe im Uhrzeigersinn und die rechten Kantenumringe gegen den Uhrzeigersinn zu durchlaufen und den zuletzt gefundenen und verworfenen Schnittpunkt als Haltepunkt zu merken!

26 Folie 26 von 32 Merge Zusammenfassung der Schritte Die Voronoi-Diagramme VD(P1) und VD(P2) sind bereits berechnet. Die konvexen Hüllen CH(P1) und CH(P2) seien ebenfalls an dieser Stelle bekannt. 1. Bestimme die obere und untere Tangente von CH(P1) U CH(P2) 2. Konstruiere CH(P1 U P2) 3. Bilde die Mittelsenkrechten zu den beiden neu eingeführten Kanten 4. Konstruiere den trennenden Kantenzug als Verbindung der beiden Mittelsenkrechten 5. Entferne die überstehenden Kanten 6. Bilde die neu entstandenen Voronoi-Regionen (Maschen)

27 Folie 27 von 32 Merge Bestimmen der oberen Tangente 10x

28 Folie 28 von 32 Pseudocode Divide and Conquer Input: Liste P mit mindestens 1 Punkt Output: Voronoi-Diagramm der Punktmenge P VoronoiDiagramm BaueVoro(Punktliste P) if Anzahl der Punkte in P größer als 1 Divide: Zerlege P in zwei etwa gleich große Teillisten P1 und P2; //Berechne rekursiv Voronoi-Diagramme von P1 und P2 VoronoiDiagramm VD1 = BaueVoro(P1); VoronoiDiagramm VD2 = BaueVoro(P2); Ergebnis = Merge(VD1, VD2); return Ergebnis; else return (Voronoi-Diagramm des Punktes in P, ganze Ebene);

29 Folie 29 von 32 Pseudocode Merge I Input: Zwei Voronoi-Diagramme VD1 und VD2 für zwei Punktmengen P1 und P2; die x- Koordinaten der Punkte in VD1 sind kleiner als die in VD2. Output: Das Voronoi-Diagramm von P1 U P2.

30 Folie 30 von 32 Pseudocode Merge II VoronoiDiagramm Merge(VD1, VD2) Konstruiere die konvexen Hüllen von VD1 und VD2; (p,q) = findeoberetangente(ch(p1),ch(p2)); (r,s) = findeunteretangente(ch(p1),ch(p2)); while (untere Mittelsenkrechte g(r,s) ist noch nicht erreicht) Bestimme für die aktuelle Mittelsenkrechte g(p,q) den Schnittpunkt P mit der Voronoi-Region p, an dem nicht im letzten Schritt die Mittelsenkrechte abgeschnitten wurde; den Schnittpunkt Q mit der Voronoi-Region q, an dem nicht im letzten Schritt die Mittelsenkrechte abgeschnitten wurde; die zugehörigen Nachbarn p' (q' ), die mit p (q) die Kante gemeinsam haben, auf der P (Q) liegt; if Q ist höher als P ersetze q durch q' und schneide g(p,q) an der Stelle Q ab; if P ist höher als Q ersetze p durch p'und schneide g(p,q) an der Stelle P ab; bestimme die neue aktuelle Mittelsenkrechte g(p,q); return Ergebnis;

31 Folie 31 von 32 Pseudocode Tangente Input: Zwei konvexe Hüllen CH(P1) und CH(P2) ; die größte x-koordinate von CH(P1) ist kleiner als die kleinste x-koordinate von CH(P2). Output: Ein Paar (u,w) von Punkten, das die obere Tangente zu CH(P1) und CH(P2) festlegt. Punktepaar findeoberetangente(ch(p1),ch(p2)) u = Punkt in CH(P1) mit der größten x-koordinate; w = Punkt in CH(P2) mit der kleinsten x-koordinate; do L(u,w) = Gerade durch u und w; u' = Knoten, der in CH(P1) auf u gegen Uhrzeigersinn folgt; w' = Knoten, der in CH(P2) auf w im Uhrzeigersinn folgt; while(u' liegt über L(u,w)) u <- u'; while(w' liegt über L(u,w)) w <- w'; while(u oder w haben sich geändert) return (u,w);

32 Folie 32 von 32 Voronoi-Diagramme Literatur Klein, Rolf: Algorithmische Geometrie. Addison-Wesley Longman, Bonn, 1997 Okabe, Atsuyuki et al.: Spatial Tesselations: Concepts and Applications of Voronoi- Diagramms. John Wiley & Sons, 2000 Ottman, Thomas, Widmayer, Peter: Algorithmen und Datenstrukturen. 3. Auflage - Spektrum Akademischer Verlag, Heidelberg, Berlin, Oxford, 1996 Preparata, F. P., Shamos, M. I.: Computational Geometry: An Introduction. Springer- Verlag, New York, 1985

SS 2005 FAU Erlangen 20.6.2005. Eine Wegeplanungs-Strategie. Jeremy Constantin, Michael Horn, Björn Gmeiner

SS 2005 FAU Erlangen 20.6.2005. Eine Wegeplanungs-Strategie. Jeremy Constantin, Michael Horn, Björn Gmeiner SS 2005 FAU Erlangen 20.6.2005 Voronoi Diagramm Eine Wegeplanungs-Strategie Jeremy Constantin, Michael Horn, Björn Gmeiner Grundseminar: Umgebungsexploration und Wegefindung mit Robotern am Beispiel "Katz

Mehr

6. Algorithmen der Computer-Geometrie

6. Algorithmen der Computer-Geometrie 6. Algorithmen der Computer-Geometrie 1. Einführung 2. Schnitt von zwei Strecken 3. Punkt-in-Polygon-Test 4. Schnitt orthogonaler Strecken 5. Punkteinschlussproblem Geo-Informationssysteme 146 6.1 Computer-Geometrie

Mehr

16. All Pairs Shortest Path (ASPS)

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

Mehr

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

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

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

Abschnitt: 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

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

Mehr

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

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

Mehr

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 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

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

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

Mehr

Sortierverfahren für Felder (Listen)

Sortierverfahren für Felder (Listen) Sortierverfahren für Felder (Listen) Generell geht es um die Sortierung von Daten nach einem bestimmten Sortierschlüssel. Es ist auch möglich, daß verschiedene Daten denselben Sortierschlüssel haben. Es

Mehr

8 Diskrete Optimierung

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

Mehr

Das Falten-und-Schneiden Problem

Das Falten-und-Schneiden Problem Das Falten-und-Schneiden Problem Kristian Bredies Uttendorf, 14. Februar 2005 Inhalt Einleitung Origami Das Falten-und-Schneiden Problem Mathematische Analyse Flaches Origami Lokale Eigenschaften Faltbarkeit

Mehr

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg 19.04.2011

Vorlesung 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

Mehr

Kap. 4.2: Binäre Suchbäume

Kap. 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:

Mehr

Datenstrukturen & Algorithmen

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

Mehr

Der linke Teilbaum von v enthält nur Schlüssel < key(v) und der rechte Teilbaum enthält nur Schlüssel > key(v)

Der linke Teilbaum von v enthält nur Schlüssel < key(v) und der rechte Teilbaum enthält nur Schlüssel > key(v) Ein Baum T mit Knotengraden 2, dessen Knoten Schlüssel aus einer total geordneten Menge speichern, ist ein binärer Suchbaum (BST), wenn für jeden inneren Knoten v von T die Suchbaumeigenschaft gilt: Der

Mehr

Algorithmen II Vorlesung am 15.11.2012

Algorithmen 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

Mehr

Kostenmaße. F3 03/04 p.188/395

Kostenmaße. F3 03/04 p.188/395 Kostenmaße Bei der TM nur ein Kostenmaß: Ein Schritt (Konfigurationsübergang) kostet eine Zeiteinheit; eine Bandzelle kostet eine Platzeinheit. Bei der RAM zwei Kostenmaße: uniformes Kostenmaß: (wie oben);

Mehr

Programmiertechnik II

Programmiertechnik II Bäume Symboltabellen Suche nach Werten (items), die unter einem Schlüssel (key) gefunden werden können Bankkonten: Schlüssel ist Kontonummer Flugreservierung: Schlüssel ist Flugnummer, Reservierungsnummer,...

Mehr

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) 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!

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

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

Mehr

Suchen und Sortieren Sortieren. Heaps

Suchen 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

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer

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?

Mehr

Graphen: Datenstrukturen und Algorithmen

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.

Mehr

Teil 2 - Softwaretechnik. Modul: Programmierung B-PRG Grundlagen der Programmierung 1 Teil 2. Übersicht. Softwaretechnik

Teil 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

Mehr

Algorithmen & Datenstrukturen 1. Klausur

Algorithmen & Datenstrukturen 1. Klausur Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse

Mehr

GIS und raumbezogene Datenbanken

GIS und raumbezogene Datenbanken GIS und raumbezogene Datenbanken Eine raumbezogene Datenbank (spatial database) dient der effizienten Speicherung, Verwaltung und Anfrage von raumbezogenen Daten. datenbankorientiert Ein geographisches

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

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

Mehr

Algorithmik - Kompaktkurs

Algorithmik - Kompaktkurs Algorithmik - Kompaktkurs Sommersemester 2012 Steffen Lange 0/1, Folie 1 2012 Prof. Steffen Lange - HDa/FbI - Algorithmik Organisatorisches Vorlesung Folien im Netz (/* bitte zur Vorlesung mitbringen */)

Mehr

Datenstrukturen und Algorithmen SS07

Datenstrukturen 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

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

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

Mehr

Häufige Item-Mengen: die Schlüssel-Idee. Vorlesungsplan. Apriori Algorithmus. Methoden zur Verbessung der Effizienz von Apriori

Hä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,

Mehr

Punktbeschriftung in Dynamischen Karten

Punktbeschriftung 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

Mehr

Überblick. Lineares Suchen

Überblick. Lineares Suchen Komplexität Was ist das? Die Komplexität eines Algorithmus sei hierbei die Abschätzung des Aufwandes seiner Realisierung bzw. Berechnung auf einem Computer. Sie wird daher auch rechnerische Komplexität

Mehr

Über Kommentare und Ergänzungen zu diesen Lösungsbeispielen freuen wir uns!

Über Kommentare und Ergänzungen zu diesen Lösungsbeispielen freuen wir uns! Aufgaben und Lösungen. Runde 04 Über Kommentare und Ergänzungen zu diesen n freuen wir uns!» KORREKTURKOMMISSION KARL FEGERT» BUNDESWETTBEWERB MATHEMATIK Kortrijker Straße, 577 Bonn Postfach 0 0 0, 5 Bonn

Mehr

Graphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007

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

Mehr

Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org

Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme Faktorisierung Stefan Büttcher stefan@buettcher.org 1 Definition. (RSA-Problem) Gegeben: Ò ÔÕ, ein RSA-Modul mit unbekannten Primfaktoren

Mehr

Kap. 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 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

Mehr

Computer Graphik I Polygon Scan Conversion

Computer Graphik I Polygon Scan Conversion 11/23/09 lausthal omputer raphik I Polygon Scan onversion. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Klassifikation der Polygone Konvex Für jedes Punktepaar in einem konvexen Polygon

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung Algorithmen und Datenstrukturen Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile direkt aus der Vorlesung

Mehr

Algorithmische Geometrie

Algorithmische Geometrie Algorithmische Geometrie 1-1 Inhaltsverzeichnis 1. Einführung 2. Basiskonzepte 3. Punktsuche 4. Voronoidiagramme und Delaunaytriangulierung 5. Allgemeine Suchstrukturen 1-2 1.1. Was ist? (Computational

Mehr

Sortieralgorithmen. Inhalt: InsertionSort BubbleSort QuickSort. Marco Block

Sortieralgorithmen. Inhalt: InsertionSort BubbleSort QuickSort. Marco Block Inhalt: InsertionSort BubbleSort QuickSort Block M.: "Java-Intensivkurs - In 14 Tagen lernen Projekte erfolgreich zu realisieren", Springer-Verlag 2007 InsertionSort I Das Problem unsortierte Daten in

Mehr

13. Binäre Suchbäume

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

Mehr

9.4 Binäre Suchbäume. Xiaoyi Jiang Informatik II Datenstrukturen und Algorithmen

9.4 Binäre Suchbäume. Xiaoyi Jiang Informatik II Datenstrukturen und Algorithmen 9.4 Binäre Suchbäume Erweiterung: Einfügen an der Wurzel Standardimplementierung: Der neue Schlüssel wird am Ende des Suchpfades angefügt (natürlich, weil zuerst festgestellt werden muss, ob der Schlüssel

Mehr

22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet

22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet 22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet Autor Volker Claus, Universität Stuttgart Volker Diekert, Universität Stuttgart Holger Petersen, Universität Stuttgart

Mehr

Maximaler 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 Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Wasist das? Maximaler Fluss Minimaler Schnitt Warumtut man das? Logistische

Mehr

Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz

Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz Datenstruktur BDD 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer: Booleschen Funktionen)

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen 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

Mehr

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7)

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7) Datenstrukturen und Algorithmen Vorlesung 9: (K7) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.rwth-aachen.de/i2/dsal0/ Algorithmus 8. Mai 200 Joost-Pieter

Mehr

Ideen der Informatik Suchen und Sortieren [Ordnung muss sein ] Kurt Mehlhorn Adrian Neumann viele Folien von Kostas Panagiotou

Ideen der Informatik Suchen und Sortieren [Ordnung muss sein ] Kurt Mehlhorn Adrian Neumann viele Folien von Kostas Panagiotou Ideen der Informatik Suchen und Sortieren [Ordnung muss sein ] Kurt Mehlhorn Adrian Neumann viele Folien von Kostas Panagiotou Suchen Welche Telefonnummer hat Kurt Mehlhorn? Wie schreibt man das Wort Equivalenz?

Mehr

Grundlegende Geometrie - Vorlesung mit integriertem Praxiskurs. 09.02. Klausur (08-10 Uhr Audimax, HS 1)

Grundlegende Geometrie - Vorlesung mit integriertem Praxiskurs. 09.02. Klausur (08-10 Uhr Audimax, HS 1) Vorlesungsübersicht Wintersemester 2015/16 Di 08-10 Audimax Grundlegende Geometrie - Vorlesung mit integriertem Praxiskurs Benötigte Materialien: Geometrieheft DIN-A-4 blanco weiß, quadratisches Faltpapier

Mehr

Expander Graphen und Ihre Anwendungen

Expander Graphen und Ihre Anwendungen Expander Graphen und Ihre Anwendungen Alireza Sarveniazi Mathematisches Institut Universität Göttingen 21.04.2006 Alireza Sarveniazi (Universität Göttingen) Expander Graphen und Ihre Anwendungen 21.04.2006

Mehr

Lösungsvorschläge. zu den Aufgaben im Kapitel 4

Lösungsvorschläge. zu den Aufgaben im Kapitel 4 Lösungsvorschläge zu den Aufgaben im Kapitel 4 Aufgabe 4.1: Der KNP-Algorithmus kann verbessert werden, wenn in der Funktion nexttabelle die Zuweisung next[tabindex] = ruecksprung; auf die etwas differenziertere

Mehr

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

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

Mehr

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29 1 29 Teil III: Routing - Inhalt I Literatur Compass & Face Routing Bounded & Adaptive Face Routing Nicht Ω(1) UDG E. Kranakis, H. Singh und Jorge Urrutia: Compass Routing on Geometric Networks. Canadian

Mehr

Algorithmen und Datenstrukturen (WS 2007/08) 63

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

Mehr

Algorithmen und Datenstrukturen Suchbaum

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

Mehr

Anwendungen der Wirtschaftsmathematik und deren Einsatz im Schulunterricht

Anwendungen der Wirtschaftsmathematik und deren Einsatz im Schulunterricht Anwendungen der Wirtschaftsmathematik und deren Einsatz im Schulunterricht Standortplanung Kunden Speyer, Juni 2004 - Beispiele mathematischer Medellierung Seite 1 Prof Dr Horst W Hamacher Standortplanung

Mehr

12. Modelle für 3D-Objekte und -Szenen

12. Modelle für 3D-Objekte und -Szenen 12. Modelle für 3D-Objekte und -Szenen Modell: Abbild der Realität, welches bestimmte Aspekte der Realität repräsentiert (und andere ausblendet) mathematische Modelle symbolische Modelle Datenmodelle Experimentalmodelle

Mehr

Programmieren I. Kapitel 7. Sortieren und Suchen

Programmieren 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

Mehr

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

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

Mehr

Nachklausur zur Einführung in die Geometrie im SS 2002 Lösung Aufgabe 1 1.Weg (kurz und einfach):

Nachklausur zur Einführung in die Geometrie im SS 2002 Lösung Aufgabe 1 1.Weg (kurz und einfach): Nachklausur zur Einführung in die Geometrie im SS 2002 Lösung ufgabe 1 1.Weg (kurz und einfach): C! **C* Umlaufsinn erhalten Verschiebung oder Drehung Verbindungsgeraden *, *, CC* nicht parallel Drehung

Mehr

4.1 Einführung. 4.2 Z-Ordnung. 4.3 R-Bäume. 4.4 Quadtrees. Kapitel 3: Räumliche Indexstrukturen. 4. Räumliche Indexstrukturen

4.1 Einführung. 4.2 Z-Ordnung. 4.3 R-Bäume. 4.4 Quadtrees. Kapitel 3: Räumliche Indexstrukturen. 4. Räumliche Indexstrukturen LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Kapitel 3: Räumliche Indexstrukturen Skript zur Vorlesung Geo-Informationssysteme Wintersemester 2011/12 Ludwig-Maximilians-Universität

Mehr

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 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

Mehr

Zeichnen von Graphen. graph drawing

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

Mehr

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Entscheidungsbä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

Mehr

Sortierte Folgen 250

Sortierte 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:

Mehr

Algorithms for Regression and Classification

Algorithms for Regression and Classification Fakultät für Informatik Effiziente Algorithmen und Komplexitätstheorie Algorithms for Regression and Classification Robust Regression and Genetic Association Studies Robin Nunkesser Fakultät für Informatik

Mehr

Kapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Kapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung Kapitel 6 Komplexität von Algorithmen 1 6.1 Beurteilung von Algorithmen I.d.R. existieren viele Algorithmen, um dieselbe Funktion zu realisieren. Welche Algorithmen sind die besseren? Betrachtung nicht-funktionaler

Mehr

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1 Abiturprüfung Mathematik (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe Für jedes t f t () + t R ist die Funktion f t gegeben durch = mit R. Das Schaubild von f t heißt K t.. (6 Punkte)

Mehr

Berechnung und Visualisierung von Voronoi-Diagrammen in 3D

Berechnung und Visualisierung von Voronoi-Diagrammen in 3D Rheinische Friedrich-Wilhelms-Universität Bonn Berechnung und Visualisierung von Voronoi-Diagrammen in 3D Vorgelegt von Christoph Baudson Edgar Klein Erstgutachter: Prof. Dr. R. Klein Zweitgutachterin:

Mehr

Sortierverfahren. Sortierverfahren für eindimensionale Arrays

Sortierverfahren. Sortierverfahren für eindimensionale Arrays Sortierverfahren Sortierverfahren Sortieren durch Einfügen Sortieren durch Auswählen Sortieren durch Vertauschen (Bubblesort) Quicksort Sortierverfahren für eindimensionale Arrays 1 Gegeben ist eine beliebige

Mehr

WS 2009/10. Diskrete Strukturen

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

Mehr

PROSEMINAR ONLINE ALGORITHMEN

PROSEMINAR ONLINE ALGORITHMEN PROSEMINAR ONLINE ALGORITHMEN im Wintersemester 2000/2001 Prof. Dr. Rolf Klein, Dr. Elmar Langetepe, Dipl. Inform. Thomas Kamphans (Betreuer) Vortrag vom 15.11.2000 von Jan Schmitt Thema : Finden eines

Mehr

Einführung Point Cloud Library

Einführung Point Cloud Library Fakultät Umweltwissenschaften / Professur für Photogrammetrie Professur für Geoinformationssysteme Einführung Point Cloud Library Inhalt 1. Was ist PCL? 2. Was kann PCL? 3. Wie funktioniert PCL? 4. Module

Mehr

Vorlesung 3 MINIMALE SPANNBÄUME

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

Mehr

Laufzeit und Komplexität

Laufzeit 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

Mehr

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. 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?

Mehr

Teil II. Nichtlineare Optimierung

Teil II. Nichtlineare Optimierung Teil II Nichtlineare Optimierung 60 Kapitel 1 Einleitung In diesem Abschnitt wird die Optimierung von Funktionen min {f(x)} x Ω betrachtet, wobei Ω R n eine abgeschlossene Menge und f : Ω R eine gegebene

Mehr

Handout 6. Entwicklung von Makros

Handout 6. Entwicklung von Makros Handout 6 Entwicklung von Makros Cinderella kann eine Sequenz von Konstruktionsbefehlen aufzeichnen und sie als neues Werkzeug speichern. Dies bezeichnet man als Makro-Konstruktion. Mit diesen Aufgaben

Mehr

Suchen und Sortieren (Die klassischen Algorithmen)

Suchen und Sortieren (Die klassischen Algorithmen) Suchen und Sortieren (Die klassischen Algorithmen) Lineare Suche und Binäre Suche (Vorbedingung und Komplexität) Sortieralgorithmen (allgemein) Direkte Sortierverfahren (einfach aber langsam) Schnelle

Mehr

27. August 2013 Einleitung. Algorithmen und Datenstrukturen

27. August 2013 Einleitung. Algorithmen und Datenstrukturen Algorithms and Data Structures Introduction Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 27. August 201 ODE/FHTBM Algorithms and Data Structures Introduction

Mehr

Codierung. Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau

Codierung. Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau Codierung Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau Ein bisschen Informationstheorie Betrachten wir das folgende Problem: Wie lautet eine sinnvolle Definition für das quantitative

Mehr

Seminarvortag 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 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:

Mehr

Binäre lineare Optimierung mit K*BMDs p.1/42

Binä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

Mehr

Verwendung einer Polaris als Kegelsonnenuhr zur Anzeige babylonischer und italienischer Stunden

Verwendung einer Polaris als Kegelsonnenuhr zur Anzeige babylonischer und italienischer Stunden Verwendung einer Polaris als Kegelsonnenuhr zur Anzeige babylonischer und italienischer Stunden 1. Einleitung In dem Beitrag wird gezeigt, dass die Polaris, eine äquatoriale Sonnenuhr der Firma Helios

Mehr

Tutorium Algorithmen & Datenstrukturen

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

Mehr

Bei Konstruktionen dürfen nur die folgenden Schritte durchgeführt werden : Beliebigen Punkt auf einer Geraden, Strecke oder Kreislinie zeichnen.

Bei Konstruktionen dürfen nur die folgenden Schritte durchgeführt werden : Beliebigen Punkt auf einer Geraden, Strecke oder Kreislinie zeichnen. Geometrie I. Zeichnen und Konstruieren ================================================================== 1.1 Der Unterschied zwischen Zeichnen und Konstruieren Bei der Konstruktion einer geometrischen

Mehr

Tutorium 5 - Programmieren

Tutorium 5 - Programmieren Tutorium 5 - Programmieren Grischa Liebel Uni Karlsruhe (TH) Tutorium 11 1 Einleitung 2 Abschlussaufgaben 3 Vorlesungsstoff 4 Ergänzungen zum Vorlesungsstoff Grischa Liebel (Uni Karlsruhe (TH)) c 2008

Mehr

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen: 1 Parallele Algorithmen Grundlagen Parallele Algorithmen Grundlagen Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen: Dekomposition eines Problems in unabhängige Teilaufgaben.

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2012/13 Organisatorisches Vorlesung: Übungsbetreuung: Übungen: Programmierübungen: Alexander Wolff (E29) Jan Haunert (E27) Markus Ankenbrand Titus Dose Alexej

Mehr

Formelsammlung zur Kreisgleichung

Formelsammlung zur Kreisgleichung zur Kreisgleichung Julia Wolters 6. Oktober 2008 Inhaltsverzeichnis 1 Allgemeine Kreisgleichung 2 1.1 Berechnung des Mittelpunktes und Radius am Beispiel..... 3 2 Kreis und Gerade 4 2.1 Sekanten, Tangenten,

Mehr

Einführung in die Informatik 1

Einführung in die Informatik 1 Einführung in die Informatik 1 Datenorganisation und Datenstrukturen Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00

Mehr

Branch-and-Bound. Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir

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.

Mehr

Grundlagen der 3D-Modellierung

Grundlagen der 3D-Modellierung April 28, 2009 Inhaltsverzeichnis 1 Einführung 2 Direkte Darstellungsschemata 3 Indirekte Darstellungsschemata 4 Parametrische Kurven und Freiformflächen 5 Abschluss Motivation Vom physikalischen Körper

Mehr

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 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

Mehr

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.

Programmierung 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

Datenstruktur, die viele Operationen dynamischer Mengen unterstützt

Datenstruktur, 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)

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

Geometrie Klasse 5 Basiswissen und Grundbegriffe der Geometrie

Geometrie Klasse 5 Basiswissen und Grundbegriffe der Geometrie Geometrie Klasse 5 Basiswissen und Grundbegriffe der Geometrie Skript Beispiele Musteraufgaben Seite 1 Impressum Mathefritz Verlag Jörg Christmann Pfaffenkopfstr. 21E 66125 Saarbrücken verlag@mathefritz.de

Mehr