1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
|
|
- Lilli Fried
- vor 7 Jahren
- Abrufe
Transkript
1 Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
2 Einordnung u zur Erinnerung... effiziente Realisierung der zur Verwaltung von sich dynamisch ändernden Datenbeständen typischen Operationen Verwendung von binären Suchbäumen, um die Idee der binären Suche zu realisieren (/* Suchen, Löschen und Einfügen gehen in O(tiefe(B)) */) Einschränkung auf höhenbalancierte binäre Suchbäume, um die Operationen effizienter zu realisieren (/* tiefe(b) O(log(n)), wobei n die Anzahl der Knoten in B bezeichnet */)... die Operationen Suchen, Einfügen und Löschen benötigen im worst case jeweils die Zeit O(log(n)) 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
3 Einordnung u prominente Beispiele AVL-Bäume B-Bäume... Anforderungen an die Struktur festlegen, damit sicher gestellt ist, daß tiefe(b) O(log(n)) gilt die Operationen Einfügen und Löschen so realisieren, daß die Anforderungen an die Struktur (/* Invariante 1 */) und an die Ordnung (/* Invariante 2 */) auch nach Ausführung der Operation erfüllt sind 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
4 AVL-Bäume u informelle Beschreibung Ein binärer Suchbaum heißt AVL-Baum, wenn für jeden Knoten gilt, daß sich die Tiefe seines linken und seines rechten Teilbaums um maximal 1 unterscheiden. u Begriff - Balancegrad k b(k) = tiefe(tb L ) - tiefe(tb R ) TB L TB R 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
5 AVL-Bäume u Anmerkung zur Repräsentation (zur Erinnerung) jeder Knoten enthält maximal fünf Informationen einen Schlüssel seinen Balancegrad (/* für die Operationen Einfügen und Löschen wichtig */) max. einen Verweis auf den Vater (/* fehlt für die Wurzel */) max. zwei Verweise auf die Söhne (/* diese können auch fehlen */) 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
6 AVL-Bäume u Beispiel 5/-1 3/0 8/1 4/0 6/-1 9/0 7/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
7 AVL-Bäume u Anmerkung zur Operation Suchen... die Operation Suchen wird wie üblich in binären Suchbäumen realisiert 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
8 u zugrunde liegende Idee findet in 2 Phasen statt Phase 1 Operation Einfügen, wie man sie für normale binäre Suchbäume kennt, ausführen (/* es wird auf Blattebene eingefügt; Invariante 2 erfüllt */) Phase 2 dem Pfad von dem neuen Blatt zur Wurzel folgen im aktuell besuchten Knoten ist der Balancegrad anzupassen (/* dazu muß man die Balancegrad der Söhne kennen */) falls der Balancegrad auf 2 bzw. -2 geändert wird, ist der Baum erst zu modifizieren und dann wird gestoppt sonst wird der nächste Knoten auf dem Weg zur Wurzel besucht (/* falls es keinen nächsten Knoten gibt, wird gestoppt */) 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
9 u Illustration x = 1 in den leeren Baum einfügen 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
10 u Illustration (cont.) x = 2 in den linken Baum einfügen 1/-1 2/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
11 u Illustration (cont.) x = 3 in den linken Baum einfügen 1/-2 1/-1 2/-1 2/0 3/0 2/0 3/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
12 u Illustration (cont.) x = 5 in den linken Baum einfügen 2/0 2/-1 3/0 3/-1 5/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
13 u Illustration (cont.) x = 6 in den linken Baum einfügen 2/-1 2/-1 3/-1 3/-2 5/0 5/-1 6/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
14 u Illustration (cont.) LinksRotation 2/-1 2/-1 3/-2 5/0 5/-1 3/0 6/0 6/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
15 u Illustration (cont.) x = 4 in den linken Baum einfügen 2/-1 2/-2 5/0 5/1 3/0 6/0 3/-1 6/0 4/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
16 u Illustration (cont.)... nicht wirklich gut!!! 2/-2 5/2 5/1 2/-2 6/0 3/-1 6/0 3/-1 4/0 4/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
17 u Illustration (cont.) RechtsRotation 2/-2 2/-2 5/1 3/-2 3/-1 6/0 5/0 4/0 4/0 6/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
18 u Illustration (cont.) anschließende LinksRotation 2/-2 3/0 3/-2 2/1 5/0 5/0 4/0 6/0 4/0 6/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
19 u allgemein zu den Rotationen (/* auch fürs Löschen wichtig */) falls der Balancegrad auf 2 bzw. -2 geändert wird, ist der Baum lokal zu modifizieren (/* welche und wie viele Rotationen durchzuführen sind, ist durch den Balancegrade der Söhne determiniert */) bei der Rotation müssen die Balancegrade der Söhne und ggf. der Enkel angepaßt werden 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
20 u Linksrotation (/* gibt es auch als Rechtsrotation */) k/-2 LinksRotation k /0 k /-1 k/0 k /x k /x... hier x = -1; analog, falls x = 1 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
21 u Doppelrotation (/* gibt es auch mit einer Linksrotation beginnend */) k/-2 RechtsRotation k/-2 k /1 k /-2 k /x k /0... hier x = -1; analog, falls x = 1 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
22 u Doppelrotation (/* cont. */) k/-2 LinksRotation k /0 k /-2 k/1 k /0 k /0... hier x = -2; analog, falls x = -1 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
23 u Anmerkungen zum Einfügen Phase 1 wie in üblichen Suchbäumen (/* geht in Zeit O(tiefe(B)) */) Phase 2 die Balancegrade anpassen, bis Wurzel erreicht oder bis der Balancegrad auf 2 bzw. -2 geändert wurde (/* geht in Zeit O(tiefe(B)) */) falls der Balancegrad auf 2 bzw. -2 geändert wird, sind im worst case 2 Rotationen fällig (/* geht in Zeit O(1), da nur lokale Änderungen nötig sind */)... die Operation Einfügen benötigt im worst case die Zeit O(log(n)), wobei n die Anzahl der Knoten im Baum B bezeichnet (/* es gilt tiefe(b) O(log(n)) */) 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
24 AVL-Bäume - Operation Löschen u zugrunde liegende Idee findet in 2 Phasen statt Phase 1 Operation Löschen, wie man sie für normale binäre Suchbäume kennt, ausführen (/* die Idee der symmetrischen Nachfolger berücksichtigen; Invariante 2 erfüllt */) Phase 2 dem Pfad vom Vater des gestrichenen Knotens zur Wurzel folgen im aktuell besuchten Knoten ist der Balancegrad anzupassen (/* dazu muß man die Balancegrad der Söhne kennen */) falls der Balancegrad auf 2 bzw. -2 geändert wird, ist der Baum zu modifizieren (/* analog zum Einfügen */) und der nächste Knoten auf dem Weg zur Wurzel zu besuchen (/* anders als beim Einfügen */) sonst wird gleich der nächste Knoten auf dem Weg zur Wurzel besucht (/* falls es keinen nächsten Knoten gibt, wird gestoppt */) 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
25 AVL-Bäume - Operation Löschen u Illustration (/* Löschen von x = 5 */) 9/-1 6/-1 18/1 5/0 8/1 14/0 19/-1 7/0 1 16/-1 20/0 17/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
26 AVL-Bäume - Operation Löschen u Illustration (/* Löschen von x = 5, cont. */) 9/-1 6/-2 18/1 8/1 14/0 19/-1 7/0 1 16/-1 20/0 17/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
27 AVL-Bäume - Operation Löschen u Illustration (/* Löschen von x = 5, cont. */) 9/-2 7/0 18/1 6/0 8/0 14/0 19/ /-1 20/0 17/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
28 AVL-Bäume - Operation Löschen u Illustration (/* Löschen von x = 5, cont. */) 9/-2 7/0 14/-1 6/0 8/0 1 18/0 16/-1 19/-1 17/0 20/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
29 AVL-Bäume - Operation Löschen u Illustration (/* Löschen von x = 5, cont. */) 14/0 9/1 18/0 7/0 1 16/-1 19/-1 6/0 8/0 17/0 20/0 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
30 AVL-Bäume - Operation Löschen u Anmerkungen zum Löschen Phase 1 wie in üblichen Suchbäumen (/* geht in Zeit O(tiefe(B)) */) Phase 2 insgesamt müssen die Balancegrade aller Knoten auf dem Weg zur Wurzel angepaßt werden und im worst case je besuchten Knoten zwei Rotationen ausgeführt werden die Balancegrade anpassen (/* geht in Zeit O(1), da nur lokale Änderungen nötig sind */) falls der Balancegrad auf 2 bzw. -2 geändert wird, sind im worst case 2 Rotationen fällig (/* geht in Zeit O(1), da nur lokale Änderungen nötig sind */)... die Operation Löschen benötigt im worst case die Zeit O(log(n)), wobei n die Anzahl der Knoten im Baum B bezeichnet (/* es gilt tiefe(b) O(log(n)) */) 4/2, Folie Prof. Steffen Lange - HDa/FbI - Datenstrukturen
1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/3, Folie 1 2010 Prof. Steffen Lange - HDa/FbI
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 - Balancierte Bäume, AVL-Bäume) Prof. Dr. Susanne Albers Balancierte Bäume Eine Klasse von binären Suchbäumen ist balanciert, wenn jede der drei
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (22 - AVL-Bäume: Entfernen) Prof. Dr. Susanne Albers Definition von AVL-Bäumen Definition: Ein binärer Suchbaum heißt AVL-Baum oder höhenbalanziert,
MehrAVL-Bäume. (Algorithmen und Datenstrukturen I) Prof. Dr. Oliver Braun. Letzte Änderung: :16. AVL-Bäume 1/38
AVL-Bäume (Algorithmen und Datenstrukturen I) Prof. Dr. Oliver Braun Letzte Änderung: 18.03.2018 18:16 AVL-Bäume 1/38 Balancierte Bäume in einem zufällig erzeugten Binärbaum haben die Algorithmen Suchen,
MehrAlgorithmen und Datenstrukturen I AVL-Bäume
Algorithmen und Datenstrukturen I AVL-Bäume Prof. Dr. Oliver Braun Letzte Änderung: 01.12.2017 14:42 Algorithmen und Datenstrukturen I, AVL-Bäume 1/38 Balancierte Bäume in einem zufällig erzeugten Binärbaum
MehrRotation. y T 3. Abbildung 3.10: Rotation nach rechts (analog links) Doppelrotation y
Die AVL-Eigenschaft soll bei Einfügungen und Streichungen erhalten bleiben. Dafür gibt es zwei mögliche Operationen: -1-2 Rotation Abbildung 3.1: Rotation nach rechts (analog links) -2 +1 z ±1 T 4 Doppelrotation
MehrÜbung: Algorithmen und Datenstrukturen SS 2007
Übung: Algorithmen und Datenstrukturen SS 07 Prof. Lengauer Sven Apel, Michael Claÿen, Christoph Zengler, Christof König Blatt 8 Votierung in der Woche vom 25.06.0729.06.07 Aufgabe 22 AVL-Bäume (a) Geben
MehrDatenstrukturen und Algorithmen SS07
Datenstrukturen und Algorithmen SS07 Datum: 25.4.2007 Michael Belfrage mbe@student.ethz.ch belfrage.net/eth Programm von Heute Nachbesprechung Serie 4 Challenge der Woche Traversierung von Bäumen Pre-,
MehrDynamische Mengen. Realisierungen durch Bäume
Dynamische Mengen Eine dynamische Menge ist eine Datenstruktur, die eine Menge von Objekten verwaltet. Jedes Objekt x trägt einen eindeutigen Schlüssel key[x]. Die Datenstruktur soll mindestens die folgenden
MehrDatenstrukturen Teil 3. Traversierung und AVL- Bäume. Traversierung. Traversierung. Traversierung
Traversierung Datenstrukturen Teil 3 Traversierung und AVL- Bäume Traversierung: bezeichnet verschiede Verfahren einer Routenbestimmung durch baumförmige Graphen Dabei wird jeder Knoten und jede Kante
MehrDatenstrukturen und Algorithmen (SS 2013)
Datenstrukturen und Algorithmen (SS 20) Übungsblatt 8 Abgabe: Montag, 24.06.20, 14:00 Uhr Die Übungen sollen in Gruppen von zwei bis drei Personen bearbeitet werden. Schreiben Sie die Namen jedes Gruppenmitglieds
Mehr2.7 Bucket-Sort Bucket-Sort ist ein nicht-vergleichsbasiertes Sortierverfahren. Hier können z.b. n Schlüssel aus
2.7 Bucket-Sort Bucket-Sort ist ein nicht-vergleichsbasiertes Sortierverfahren. Hier können z.b. n Schlüssel aus {0, 1,..., B 1} d in Zeit O(d(n + B)) sortiert werden, indem sie zuerst gemäß dem letzten
MehrKapitel 1: Motivation / Grundlagen Gliederung
Gliederung 1. Motivation / Grundlagen 2. Sortier- und Selektionsverfahren 3. Paradigmen des Algorithmenentwurfs 4. Ausgewählte Datenstrukturen 5. Algorithmische Geometrie 6. Umgang mit algorithmisch schwierigen
MehrSatz 172 Jedes vergleichsbasierte Sortierverfahren benötigt im worst-case mindestens n ld n + O(n) Vergleiche und hat damit Laufzeit Ω(n log n).
2.6 Vergleichsbasierte Sortierverfahren Alle bisher betrachteten Sortierverfahren sind vergleichsbasiert, d.h. sie greifen auf Schlüssel k, k (außer in Zuweisungen) nur in Vergleichsoperationen der Form
MehrKapitel 2: Sortier- und Selektionsverfahren Gliederung
Gliederung 1. Laufzeit von Algorithmen 2. Sortier- und Selektionsverfahren 3. Paradigmen des Algorithmenentwurfs 4. Ausgewählte Datenstrukturen 5. Algorithmische Geometrie 6. Randomisierte Algorithmen
MehrADS 1: Algorithmen und Datenstrukturen
ADS 1: Algorithmen und Datenstrukturen Teil IX Uwe Quasthoff Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 1 Dezember 017 [Letzte Aktualisierung: 04/1/017, 10:56]
Mehr7 Weitere Baumstrukturen und Heapstrukturen
7 Weitere Baumstrukturen und Heapstrukturen Man kann kurze Suchzeiten in Baumstrukturen erreichen durch Rebalancierung bei Einfügungen und Löschungen (AVL Bäume, gewichtsbalancierte Bäume, Bruderbäume,
MehrBinäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps
Binäre Suchbäume Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps Mengen n Ziel: Aufrechterhalten einer Menge (hier: ganzer Zahlen) unter folgenden Operationen: Mengen n Ziel: Aufrechterhalten einer
MehrAlgorithmen und Datenstrukturen Balancierte Suchbäume
Algorithmen und Datenstrukturen Balancierte Suchbäume Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Überblick Einführung Einfügen und Löschen Einfügen
MehrÜbung Algorithmen und Datenstrukturen
Übung Algorithmen und Datenstrukturen Sommersemester 216 Patrick Schäfer, Humboldt-Universität zu Berlin Agenda Vorstellung des 6. Übungsblatts. Hashing Binäre Suchbäume AVL-Bäume 2 Aufgabe: Hashing mit
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. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 2/2, Folie 1 2014 Prof. Steffen Lange - HDa/FbI
MehrÜbersicht. Rot-schwarz Bäume. Rot-schwarz Bäume. Beispiel. Eigenschaften. Datenstrukturen & Algorithmen. Rot-schwarz Bäume Eigenschaften Einfügen
Datenstrukturen & Algorithmen Übersicht Rot-schwarz Bäume Eigenschaften Einfügen Matthias Zwicker Universität Bern Frühling 2009 2 Rot-schwarz Bäume Binäre Suchbäume sind nur effizient wenn Höhe des Baumes
Mehr1 AVL-Bäume. 1.1 Aufgabentyp. 1.2 Überblick. 1.3 Grundidee
AVL-Bäume. Aufgabentyp Fügen Sie in einen anfangs leeren AVL Baum die folgenden Schlüssel ein:... Wenden Sie hierbei konsequent den Einfüge /Balancierungsalgorithmus an und dokumentieren Sie die ausgeführten
MehrAlgorithmen und Datenstrukturen 2. Dynamische Datenstrukturen
Algorithmen und Datenstrukturen 2 Dynamische Datenstrukturen Algorithmen für dynamische Datenstrukturen Zugriff auf Variable und Felder durch einen Ausdruck: Namen durch feste Adressen referenziert Anzahl
MehrGliederung. 5. Compiler. 6. Sortieren und Suchen. 7. Graphen
5. Compiler Gliederung 1. Struktur eines Compilers 2. Syntaxanalyse durch rekursiven Abstieg 3. Ausnahmebehandlung 4. Arrays und Strings 6. Sortieren und Suchen 1. Grundlegende Datenstrukturen 2. Bäume
MehrDatenstrukturen Teil 2. Bäume. Definition. Definition. Definition. Bäume sind verallgemeinerte Listen. Sie sind weiter spezielle Graphen
Bäume sind verallgemeinerte Listen Datenstrukturen Teil 2 Bäume Jeder Knoten kann mehrere Nachfolger haben Sie sind weiter spezielle Graphen Graphen bestehen aus Knoten und Kanten Kanten können gerichtet
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
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
Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 6 Suchbäume Version vom 25. November 2016 1 / 75 Vorlesung 10 22. November 2016 2
MehrEinfache binäre Suchbäume können entarten, so dass sich die Tiefen ihrer Blattknoten stark unterscheiden
5.6.2 AVL-Bäume Einfache binäre Suchbäume können entarten, so dass sich die Tiefen ihrer Blattknoten stark unterscheiden AVL-Bäume, benannt nach ihren Erfindern G. M. Adelson- Velskii und E. M. Landis,
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. Hashing 6. Algorithmische Geometrie 4/6, Folie 1 2014 Prof. Steffen Lange - HDa/FbI
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen B7. Balancierte Bäume 1 Marcel Lüthi and Gabriele Röger Universität Basel 13. April 2018 1 Folien basieren auf Vorlesungsfolien von Sedgewick & Wayne https://algs4.cs.princeton.edu/lectures/33balancedsearchtrees-2x2.pdf
MehrProgrammiertechnik 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,...
MehrChristian Rieck, Arne Schmidt
Institute of Operating Systems and Computer Networks Algorithms Group Algorithmen und Datenstrukturen Wintersemester 207/208 Übung#5, 2.2.207 Christian Rieck, Arne Schmidt Bäume Satz Jeder gerichtete Baum
MehrKapitel 3: Sortierverfahren Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrKapitel 5: Dynamisches Programmieren Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
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
MehrInformatik II Bäume zum effizienten Information Retrieval
lausthal Informatik II Bäume zum effizienten Information Retrieval. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Binäre Suchbäume (binary search tree, BST) Speichere wieder Daten als "Schlüssel
MehrTutoraufgabe 1 (Vollständige Induktion):
für Informatik Prof. aa Dr. Ir. Joost-Pieter Katoen Tutoriumslösung - Übung 5 (Abgabe..0) Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Tutoraufgabe 1 (Vollständige Induktion):
MehrKapitel 2: Analyse der Laufzeit von Algorithmen Gliederung
Gliederung 1. Motivation / Einordnung / Grundlagen 2. Analyse der Laufzeit von Algorithmen 3. Untere Schranken für algorithmische Probleme 4. Sortier- und Selektionsverfahren 5. Paradigmen des Algorithmenentwurfs
MehrVorlesung Informatik 2 Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (23 Bruder-Bäume, B-Bäume) Prof. Dr. Susanne Albers Balancierte Bäume Eine Klasse von binären Suchbäumen ist balanciert, wenn jede der drei Wörterbuchoperationen
MehrÜbung Datenstrukturen. Bäume
Übung Datenstrukturen Bäume Übung Binärbaum 7 2 10 1 3 5 9 34 8 7 11 13 17 7 25 19 3 Aufgabe 1 Geben Sie die Reihenfolge der besuchten Knoten nach Prä-, In-, Post- und Levelorder an! Übung Binärbaum Aufgabe
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
MehrCopyright, Page 1 of 8 AVL-Baum
www.mathematik-netz.de Copyright, Page 1 of 8 AVL-Baum 1. Motivation und Einleitung Das Suchen, Einfügen und entfernen eines Schlüssels in einem zufällige erzeugten binären Suchbaum mit N Schlüsseln ist
Mehr5 Bäume. 5.1 Suchbäume. ein geordneter binärer Wurzelbaum. geordnete Schlüsselwertmenge. heißt (schwach) sortiert, g.d.w. gilt:
5 Bäume 5.1 Suchbäume Sei ein geordneter binärer Wurzelbaum. Sei Abbildung der Knotenmenge eine in eine vollständig geordnete Schlüsselwertmenge. heißt (schwach) sortiert, g.d.w. gilt: Falls sortiert ist,
MehrAbgabe: (vor der Vorlesung) Aufgabe 7.1 (P) Binomial Heap
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 7 Prof. Dr. Helmut Seidl, S. Pott,
Mehr2 i. i=0. und beweisen Sie mittels eines geeigneten Verfahrens die Korrektheit der geschlossenen Form.
für Informatik Prof. aa Dr. Ir. Joost-Pieter Katoen Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Tutoraufgabe (Vollständige Induktion): Finden Sie eine geschlossene Form für die
MehrTutoraufgabe 1 (Vollständige Induktion): Tutoraufgabe 2 (Rotationen): Datenstrukturen und Algorithmen SS15 Übungsblatt 5 (Abgabe 3.6.
Prof. aa Dr. Ir. Joost-Pieter Katoen Allgemeine Hinweise: Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Die Hausaufgaben sollen in Gruppen von je - Studierenden aus der gleichen
Mehr1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen
Gliederung 1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen 1/1, Folie 1 2009 Prof. Steffen Lange - HDa/FbI - Effiziente
MehrÜbung Algorithmen I
Übung Algorithmen I.6.5 Christoph Striecks Christoph.Striecks@kit.edu (Mit Folien von Julian Arz, Timo Bingmann und Sebastian Schlag.) Roadmap Hinweise zur Übungsklausur (Weitere) Traversierungen von Binärbäumen
Mehr14. Rot-Schwarz-Bäume
Bislang: Wörterbuchoperationen bei binären Suchbäume effizient durchführbar, falls Höhe des Baums klein. Rot-Schwarz-Bäume spezielle Suchbäume. Rot-Schwarz-Baum mit n Knoten hat Höhe höchstens 2 log(n+1).
MehrAlgorithmen und Datenstrukturen 1
Algorithmen und Datenstrukturen 1 9. Vorlesung Peter Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Balancierte Binärbäume Der ausgeglichene binäre Suchbaum verursacht
MehrKapitel 3: Untere Schranken für algorithmische Probleme Gliederung
Gliederung 1. Grundlagen 2. Analyse der Laufzeit von Algorithmen 3. Untere Schranken für algorithmische Probleme 4. Sortier- und Selektionsverfahren 5. Paradigmen des Algorithmenentwurfs 6. Ausgewählte
MehrSuchbäume. Suchbäume. Einfügen in Binären Suchbäumen. Suchen in Binären Suchbäumen. Prinzip Suchbaum. Algorithmen und Datenstrukturen
Suchbäume Suchbäume Prinzip Suchbaum Der Wert eines Knotens wird als Schlüssel verstanden Knoten kann auch weitere Daten enthalten, die aber hier nicht weiter betrachtet werden Werte der Schlüssel müssen
MehrGliederung. Algorithmen und Datenstrukturen I. Binäre Bäume: AVL-Bäume. inäre Bäume: AVL Bäume. Abstrakte Datentypen V: AVL Bäume. D.
Gliederung Algorithmen und Datenstrukturen I Abstrakte Datentypen V: D. Rösner Institut für Wissens- und Spracherarbeitung Fakultät für Informatik Otto-on-Guericke Uniersität Magdeburg 1 Einfachrotationen
MehrAlgorithmen und Datenstrukturen 1-5. Seminar -
Algorithmen und Datenstrukturen 1-5. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Wintersemester 2009/10 Outline 5.+6. Übungsserie: 5 Aufgaben, insgesamt 40 Punkte A17 Baum-Traversierung
MehrInformatik II, SS 2016
Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 11 (1.6.2016) Binäre Suchbäume III Algorithmen und Komplexität Tiefe eines binären Suchbaums Worst-Case Laufzeit der Operationen in binären
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung 1. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken
MehrDatenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 2. April
MehrWiederholung ADT Menge Ziel: Verwaltung (Finden, Einfügen, Entfernen) einer Menge von Elementen
Was bisher geschah abstrakter Datentyp : Signatur Σ und Axiome Φ z.b. ADT Menge zur Verwaltung (Finden, Einfügen, Entfernen) mehrerer Elemente desselben Typs Spezifikation einer Schnittstelle Konkreter
MehrAlgorithmen und Datenstrukturen I Bruder-Bäume
Algorithmen und Datenstrukturen I Bruder-Bäume Prof. Dr. Oliver Braun Letzte Änderung: 11.12.2017 10:50 Algorithmen und Datenstrukturen I, Bruder-Bäume 1/24 Definition ein binärer Baum heißt ein Bruder-Baum,
MehrFast Searching / Balanced trees
Fast Searching / Balanced trees November, 8 Algorithms & Datastructures Exercises WS 8 DI -Tanase, DI Stefan Grünberger University Linz, Institute for Pervasive Computing Altenberger Straße 69, A- Linz
MehrBeispiellösungen zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 6
Robert Elsässer u.v.a. Paderborn, 29. Mai 2008 Beispiellösungen zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 6 Aufgabe 1 (6 Punkte): Zunächst sollte klar sein, daß ein vollständiger Binärer
MehrKap. 4.2 Binäre Suchbäume ff Kap. 4.3: AVL-Bäume
Kap. 4.2 Binäre Suchbäume ff Kap. 4.3: AVL-Bäume Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 12./13. VO DAP2 SS 2009 28.5./2.6.2009 1 Motivation Warum soll
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal spannende Bäume 5. Kürzeste Pfade 6. Traveling Salesman Problem 7. Flüsse
MehrDatenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 18. März
MehrInvarianzeigenschaft (für binären Suchbaum)
5.3 Binäre Suchbäume Invarianzeigenschaft (für binären Suchbaum) Im linken Teilbaum befinden sich nur Werte, die kleiner gleich dem Knotenwert sind, im rechten Teilbaum nur solche, die größer sind. und
MehrDefinition 14 Rot-Schwarz-Bäume sind externe Binärbäume (jeder Knoten hat 0 oder 2 Kinder) mit roten und schwarzen Kanten, so dass gilt:
2.1.2 Rot-Schwarz-Bäume Definition 14 Rot-Schwarz-Bäume sind externe Binärbäume (jeder Knoten hat 0 oder 2 Kinder) mit roten und schwarzen Kanten, so dass gilt: 1 alle Blätter hängen an schwarzen Kanten
MehrAbschnitt 18: Effizientes Suchen in Mengen
Abschnitt 18: Effizientes Suchen in Mengen 18. Effizientes Suchen in Mengen 18.1 Vollständig ausgeglichene binäre Suchbäume 18.2 AVL-Bäume 18.3 Operationen auf AVL-Bäumen 18.4 Zusammenfassung 18 Effizientes
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Binäre Bäume Zum Speichern und Suchen von Daten werden häufig Baumstrukturen verwendet Abspeichern von n Datenobjekten in einer Baumstruktur Ablegen von Daten ist in O(log(n))
MehrGrundlagen der Informatik / Algorithmen und Datenstrukturen. Aufgabe 143
Aufgabe 143 Aufgabe 143 Aufgabenstellung Gegeben ist der folgende AVL-Baum: a) Fügen Sie in diesen AVL-Baum nacheinander Knoten mit den Inhalten 34, 42, 1701 und 30 ein. Führen Sie die ggf. notwendigen
MehrKlausur zur Vorlesung Algorithmen und Datenstrukturen
Klausur zur Vorlesung Algorithmen und Datenstrukturen Die Dauer der Klausur beträgt 120 Minuten. Erlaubte Hilfsmittel: Ein selbst handschriftlich beschriebenes DIN A4 Blatt, das komplette Skript zur Vorlesung
MehrÜbersicht. Datenstrukturen und Algorithmen. Übersicht. Motivation. Vorlesung 10: Binäre Suchbäume
Übersicht Datenstrukturen und lgorithmen Vorlesung : Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-/dsal/ 1 Suche Einfügen
MehrWiederholung. Datenstrukturen und. Bäume. Wiederholung. Suchen in linearen Feldern VO
Wiederholung Datenstrukturen und Algorithmen VO 708.031 Suchen in linearen Feldern Ohne Vorsortierung: Sequentielle Suche Speicherung nach Zugriffswahrscheinlichkeit Selbstanordnende Felder Mit Vorsortierung:
MehrKapitel 9: Lineare Programmierung Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrÜbung Algorithmen und Datenstrukturen
Übung Algorithmen und Datenstrukturen Sommersemester 217 Marc Bux, Humboldt-Universität zu Berlin Agenda 1. Graphen und Bäume 2. Binäre Suchbäume 3. AVL-Bäume 4. Algorithmen und Datenstrukturen 2 Agenda
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Balancieren eines Suchbaums Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 396 Baumgestalt vs. Zeitkomplexität Vorteile eines ausgeglichenen binären Suchbaums
MehrVL-11: Rot-Schwarz Bäume. (Datenstrukturen und Algorithmen, SS 2017) Janosch Fuchs
VL-11: Rot-Schwarz Bäume (Datenstrukturen und Algorithmen, SS 2017) Janosch Fuchs SS 2017, RWTH DSAL/SS 2017 VL-11: Rot-Schwarz Bäume 1/41 Organisatorisches Vorlesung: Gerhard Woeginger (Zimmer 4024 im
MehrKapitel 6 Suchen.... auf verketteten Strukturen: Suchbäume ausgeglichene Bäume B-Bäume... auf sequentiellen Strukturen: Hashing
Kapitel 6 Suchen... auf verketteten Strukturen: Suchbäume ausgeglichene Bäume B-Bäume... auf sequentiellen Strukturen: Hashing Grundbegriffe Suchen = Tätigkeit, in einem vorgegebenen Datenbestand alle
MehrAlgorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B7.1 Einführung. B Bäume. B7.3 Rot-Schwarz Bäume
B7. Balancierte Bäume a B7. Balancierte Bäume 1 Marcel Lüthi and Gabriele Röger Universität Basel a Folien basieren auf Vorlesungsfolien von Sedgewick & Wayne https://algs4.cs.princeton.edu/lectures/33balancedsearchtrees-2x2.pdf
MehrInformatik II: Algorithmen und Datenstrukturen SS 2015
Informatik II: Algorithmen und Datenstrukturen SS 2015 Vorlesung 8b, Mittwoch, 17. Juni 2015 (Balancierte Suchbäume) Prof. Dr. Hannah Bast Lehrstuhl für Algorithmen und Datenstrukturen Institut für Informatik
MehrDatenstrukturen und Algorithmen SS17 Lösung - Übung 5
Prof. aa Dr. Ir. G. Woeginger T. Hartmann, D. Korzeniewski, B. Tauer Hausaufgabe (Inorder-Traversierung binärer Suchbäume): (3 + 3 Punkte) Es soll bewiesen werden, dass die Inorder-Traversierung alle Schlüssel
MehrBinäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps
Binäre Suchbäume Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps Mengen n Ziel: Aufrechterhalten einer Menge (hier: ganzer Zahlen) unter folgenden Operationen: Mengen n Ziel: Aufrechterhalten einer
MehrProgrammiertechnik 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,...
MehrContainerDatenstrukturen. Große Übung 4
ContainerDatenstrukturen Große Übung 4 Aufgabenstellung Verwalte Kollektion S von n Objekten Grundaufgaben: Iterieren/Auflistung Suche nach Objekt x mit Wert/Schlüssel k Füge ein Objekt x hinzu Entferne
Mehr3. Binäre Suchbäume. 3.1 Natürliche binäre Suchbäume. EADS 3.1 Natürliche binäre Suchbäume 78/598 ľernst W. Mayr
3. Binäre Suchbäume 3.1 Natürliche binäre Suchbäume Definition 18 Ein natürlicher binärer Suchbaum über einem durch total geordneten Universum U ist ein als interner Suchbaum organisierter Binärbaum (also:
MehrSuchstrukturen. Übersicht. 8 Suchstrukturen. Allgemeines. H. Täubig (TUM) GAD SS
Übersicht 8 Suchstrukturen Allgemeines Binäre Suchbäume AVL-Bäume H. Täubig (TUM) GAD SS 14 309 Allgemeines Übersicht 8 Suchstrukturen Allgemeines Binäre Suchbäume AVL-Bäume H. Täubig (TUM) GAD SS 14 310
MehrBalancierte Bäume. Minimale Knotenanzahl von AVL-Bäumen. AVL-Bäume. Definition für "balanciert":
Balancierte Bäume Aufwand, ein Element zu finden, entspricht der Tiefe des gefundenen Knotens im worst case = Tiefe des Baumes liegt zwischen log N und N Definition für "balanciert": es gibt verschiedene
MehrB6.1 Introduction. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B6.1 Introduction. B6.3 Analyse. B6.4 Ordnungsbasierte Methoden
Algorithmen und Datenstrukturen 11. April 2018 B6. Binäre Suchbäume a Algorithmen und Datenstrukturen B6. Binäre Suchbäume 1 Marcel Lüthi and Gabriele Röger Universität Basel 11. April 2018 a Folien basieren
MehrInformatik II, SS 2016
Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:
MehrKapitel 4: Komplexitätstheorie Gliederung
Gliederung 0. Einleitung und Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 4.1. Motivation und Grundbegriffe 4.2. Die Komplexitätsklassen P und NP
MehrMengen. Binäre Suchbäume. Mengen: Anwendungen (II) Mengen: Lösung mit Listen 12/3/12. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps
// Mengen Binäre Suchbäume Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps n Ziel: ufrechterhalten einer Menge (hier: ganzer Zahlen) unter folgenden Operationen: n eines Elements n eines Elements
MehrMehrwegbäume Motivation
Mehrwegbäume Motivation Wir haben gute Strukturen (AVL-Bäume) kennen gelernt, die die Anzahl der Operationen begrenzen Was ist, wenn der Baum zu groß für den Hauptspeicher ist? Externe Datenspeicherung
MehrAlgorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. B7.1 Einführung. B Bäume. B7.3 Rot-Schwarz Bäume.
B7. Balancierte Bäume a B7. Balancierte Bäume 1 Marcel Lüthi and Gabriele Röger Universität Basel a Folien basieren auf Vorlesungsfolien von Sedgewick & Wayne https://algs4.cs.princeton.edu/lectures/33balancedsearchtrees-2x2.pdf
MehrInformatik II, SS 2018
Informatik II - SS 2018 (Algorithmen & Datenstrukturen) Vorlesung 10 (28.5.2018) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch
MehrInformatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein
MehrAlgorithmen 1 Tutorium
Algorithmen 1 Tutorium Tutorium 13 Misch Sadler 18. Juli 2011 INHALT: VIELES Übersicht 1 Dynamische Programmierung 2 Wiederholung 3 Klausuraufgaben 4 Ende Misch Sadler Algo 1 Tut 18. Juli 2011 2/21 Übersicht
MehrKlausur Algorithmen und Datenstrukturen
Technische Universität Braunschweig Wintersemester 2014/2015 Institut für Betriebssysteme und Rechnerverbund Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Dr. Christian Scheffer Klausur Algorithmen
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
Mehr