Referat zum Thema Huffman-Codes

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Referat zum Thema Huffman-Codes"

Transkript

1 Referat zum Thema Huffman-Codes Darko Ostricki Yüksel Kahraman Huffman-Codes Huffman-Codes ( David A. Huffman, 1951) sind Präfix-Codes und das beste - optimale - Verfahren für die Codierung einzelner Zeichen, denen bestimmte Auftrittswahrscheinlichkeiten zugeordnet sind. Huffman-Codes sind bei der Datenkompression sehr effektiv. Einspaarungen von bis zu 20% bis 90 % sind möglich

2 Eigenschaften optimaler Präfix- Codes Der Huffman-Algorithmus basiert auf den folgenden zwei Eigenschaften zur Charakterisierung optimaler Präfix-Codes: 1.Bei einem optimalen Code besitzen Zeichen, die häufiger auftreten, d.h. eine größere Wahrscheinlichkeit für das Auftreten besitzen, kürzere Codeworte als Zeichen, die weniger häufig auftreten. 2. Bei einem optimalen Code besitzen die beiden am seltensten auftretenden Zeichen, d.h. die beiden Zeichen mit den geringsten Auftrittswahrscheinlichkeiten, Codewörter gleicher Länge Was sind Präfix-Codes? Fano- oder Präfixbedingung: Ein Code ist eindeutig umkehrbar -decodierbar-, falls keines der Codewörter den Anfang eines anderen Wortes des Codes bildet (hinreichende Bedingung), d.h. kein Wort w des Codes ist Anfang eines anderen Wortes w : Jeder Code der diese Eigenschaft besitzt, heißt Präfixcode. Beispiel: Binärcodierung von 4 Zeichen, C = { 0, 10, 110, 111 } ist eindeutig decodierbar, C = { 0, 10, 100, 111 } dagegen nicht!

3 Wozu Huffman-Codes? Das Ziel kommerzieller Codierung ist die Ermöglichung der Kommunikation, der Datenverarbeitung und - speicherung über technische Systeme mit möglichst hoher Effizienz. Die Huffman-Codierung ermöglicht es auf Grundlage des Alphabets und der Auftritts-Wahrscheinlichkeit der zu codierenden Symbole eine optimale Codierung zu ermitteln. Grundsätzlich gibt es für jede Nachrichtenquelle einen optimalen Code variabler Länge ( Symbol-Code ), der die Präfixbedingung erfüllt Huffman-Code Beispiel Angenommen wir haben eine Datei mit Charaktern welche wir Kompakt sichern wollen. Die zu Codierenden Zeichen stammen aus dem Alphabet A = { a,b,c,d,e,f }, A = 6 FÜR WEITERE INFOS Coremen introductions to algorithms 2 th edition

4 Wahrscheinlichkeiten Häufigkeit (in 1000) Fixedlegth codeword Variablelength codeword a b c d e f Eine Datei von Charakters enthält nur die Zeichen a-f und ihre Häufigkeiten. Als 3 Bit Cordwort kann die Datei in 300,000 Bits verschlüsselt werden und mit der variable-length codeword Methode kann die Datei sogar in Bits verschlüsselt werden Fixer Längen-Code Wenn wir einen fixen Längen-Code verwenden,benötigen wir mindestens 3 Bits für 6 zu codierende Zeichen. a= 000, b=001,..., f= 101. => (45*3+13*3+12*3+16*3+9*3+5*3)*1000= 300,000 Bits Diese Methode erfordert Bits um die gesamte Datei zu codieren. Gibt es bessere Möglichkeiten?

5 Variabler Längen-Code (Huffman) Beim variablen Längen-Code werden die häufig auftretende Zeichen über kurze Binärsequenzen codiert und selten auftretende Zeichen über längere Codeworte dargestellt. Das 1 Bit Codewort 0 repräsentiert a und das 4 Bit Codewort 1100 repräsentiert f. Dieser Code erfordert: (45*1+13*3+12*3+16*3+9*4+5*4)*1000= 224,000 Bits für die Datei und spart einen geschätzten Wert von 25% Präfix-Codes Man kann zeigen das die optimale Datenkompression von eines Charakter-Codes immer von einem Präfix-Code erreicht werden kann. Die Verschlüsselung ist immer für jeden Binären Charakter einfach. Wir Konkatenieren einfach die Codewörter die jeden Charakter der Datei repräsentieren und verfassen somit die codierte Nachricht. Beispiel 3 Zeichen File abc als 0*101*100 = Wobei * als Konkatenationsoperator dient

6 Präfix-Codes Umgekehrt kann die codierte Nachricht ebenso simpel wieder decodiert werden. Decodieren des Strings : wird geparst als 0*0*101*1101 anschließend gelesen aabe Präfix-Codes Der optimale Code kann immer durch einen vollen binären Baum repräsentiert werden, wobei jeder Nicht-Blatt-Knoten zwei Kinder hat. Der fixed-length code ist nicht optimal solange dieser nicht einen vollen binären Baum Repräsentiert

7 Präfix-Codes Fixed lenght Abb (a) fixed length code a = 000,... f = Präfix-Codes Variable length Abb (b) Baum mit optimalem prefix code a= 0, b=101,..., f =

8 Präfix-Codes Die Anzahl der Bits sind zum Verschlüsseln einer Datei erforderlich sind, werden auch Kosten des Baumes B(T) genannt. B(T) = f (c) dt (c) cεc dt (c) = Baumtiefe von c oder länge des Codewortes f (c) = Häufigkeit von c in der Datei C = Das Alphabet aus dem die Zeichen stammen und deren Häufigkeit positiv ist Konstruieren eines Huffman Codes In dem Pseudocode welcher gleich folgt, ist C das Alphabet n Zeichen, sodass jedes Zeichen c ε C ein Objekt mit einer definierten Häufigkeit f [c] ist. Der Algorithmus erstellt einen Baum T, welcher zum optimalen Code korrespondiert. Es beginnt mit einer Gesamtmenge von C Blättern, und vollzieht eine Sequenz von C - 1 Operationen um den endgültigen Baum zu erstellen. Ein min priority Queue Q, sortiert nach f wird benutzt um die 2 Objekte mit den niedrigsten Häufigkeiten miteinander zu verbinden. Beim Verbinden der 2 Objekte resultiert ein neues Objekt dessen Häufigkeit die Summe der Häufigkeiten der eben 2 verbundenen Objekte ist

9 Pseudo-Code des Huffman Algorithmus Huffman ( c ) 1. n C 2. Q C 3. for i 1 to n 1 4. do allocate a new node node z 5. left[z] x Extract-Min(Q) 6. right[z] y Extract-Min (Q) 7. f[z] f[x] + f[y] 8. INSERT (Q,z) 9. Return Extract- Min (Q) Erklärung zum Pseudocode: In Zeile 2 findet die Initialisierung der min-priority Queue mit den Charakteren in C statt.die for Schleife in den Zeilen 3-8 extrahiert wiederholend 2 Knoten x und y,die niedrigsten Häufigkeiten in der Queue, und ersetzt diese als neuen Knoten z in die Queue. Die Häufigkeit von z berechnet sich in der Summe der Häufigkeit von x und y in der Zeile 7.Der Knoten z hat x als sein linkes und y als sein rechte Kind. Nach n 1 Zusammenschlüssen (engl. mergers) wird der Knoten links in der Queue in der Zeile 9, was der Root des Code Baumes ist zurückgegeben

10 Beispiel Huffman Codes Beispiel Huffman Codes

11 Beispiel Huffman Codes Beispiel Huffman Codes

12 Dokumentation zum Beispiel Die Abbildungen a-f zeigen die Inhalte der Queue welche nach der Häufigkeit sortiert sind. Bei jedem Schritt werden die 2 Bäume mit den niedrigsten Häufigkeiten zusammengefaßt. Die übrig gebliebenen Objekte werden als Rechtecke dargestellt und beinhalten ihr Zeichen sowie dessen Häufigkeit.Interne Knoten werden als Kreise dargestellt, welche als Wert die Summe der Häufigkeiten ihrer Kinder enthalten. Eine Kante verbindet die internen Konten mit seinen Kindern, die mit 0 gekennzeichneten zu einem linken Kind und die mit 1 gekennzeichneten zu einem rechten Kind.Beginnend bei der Wurzel ist das Codewort die Sequenz der Kantenbeschriftungen. (a) Initialisierende Menge von n = 6 Knoten. (b) (b)-(e) Zwischenschritte (c) (f) Der finale Baum Das Laufzeitverhalten des Huffman Codes bertägt O(n log n) Wir nehmen an das Q als binärer min-heap implementiert wäre. ( Kapitel 6,2 edition introductions to algorithms by cormen). Für die Summe von n Zeichen aus dem Alphabet C, beträgt die Laufzeit der Initialisierung des min-heaps (in der Zeile 2 ) O(n). Die For Schleife in den Zeilen 3-8 wird exakt n 1 mal ausgeführt und im Worst Case erfordert jede Heap Operation eine Laufzeit von O(lg n); Somit beträgt die Performance des Huffman Algorithmus bei n Zeichen O(n log n)

13 Korrektheit des Huffman-Codes Der Code repräsentiert einen vollständigen Baum T. Enthält die Zeichen a und b mit den geringsten Häufigkeiten an der tiefsten Stelle des Baumes. Die Blätter a und b und sind Geschwister. Das Zeichen mit der höchsten Häufigkeit ist das linke (bzw. rechte) Kind von der Wurzel. Der Baum ist vollständig. Ein tiefer gelegenes Blatt hat stets eine geringere oder gleiche Wahrscheinlichkeit wie die höheren Blätter Lemma Theorem Nach dem Lemma-Theorem kann nachgewiesen werden das ein durch den Huffman-Algorithmus erstellter Code besser oder mindestens gleich so gut ist wie ein anderer Präfix-Code der ebenfalls durch einen vollständigen Baum repräsentiert werden kann. (für nähere Informationen siehe Kapitel 6,2nd Edition Introductions to Algorithms by Cormen)

14 Quellen Titel: Introductions to Algorithms 2nd Edition Autor: Cormen Auszüge aus Kapitel 6 Titel: Ausarbeitung zur Vorlesung - Theoretische Informatik I Autor: Heribert Koch Auszüge aus Kapitel 2.6 Informationstheorie und Datenkompression

Einleitung. Kapitel 1

Einleitung. Kapitel 1 Kapitel 1 Einleitung In diesem Abschnitt geben wir einen kurzen Überblick über den Inhalt der Vorlesung. Wir werden kurz die wesentlichen Probleme erläutern, die wir ansprechen wollen. Wir werden auch

Mehr

Einführung in die Informatik II Aus der Informationstheorie: Datenkompression

Einführung in die Informatik II Aus der Informationstheorie: Datenkompression Einführung in die Informatik II Aus der Informationstheorie: Datenkompression Prof. Bernd Brügge, Ph.D Institut für Informatik Technische Universität München Sommersemester 2 2. Juli 2 Copyright 2 Bernd

Mehr

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0

Mehr

Gierige Algorithmen Interval Scheduling

Gierige Algorithmen Interval Scheduling Gierige Algorithmen Interval Scheduling IntervalScheduling(s,f). n length[s] 2. A {} 3. j 4. for i 2 to n do 5. if s[i] f[j] then 6. A A {i} 7. j i 8. return A Gierige Algorithmen Interval Scheduling Beweisidee:

Mehr

2.7 Der Shannon-Fano-Elias Code

2.7 Der Shannon-Fano-Elias Code 2.7 Der Shannon-Fano-Elias Code Die Huffman-Codierung ist ein asymptotisch optimales Verfahren. Wir haben auch gesehen, dass sich die Huffman-Codierung gut berechnen und dann auch gut decodieren lassen.

Mehr

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. 8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.

Mehr

Wann sind Codes eindeutig entschlüsselbar?

Wann sind Codes eindeutig entschlüsselbar? Wann sind Codes eindeutig entschlüsselbar? Definition Suffix Sei C ein Code. Ein Folge s {0, 1} heißt Suffix in C falls 1 c i, c j C : c i = c j s oder 2 c C und einen Suffix s in C: s = cs oder 3 c C

Mehr

Seminar Kompressionsalgorithmen Huffman-Codierung, arithmetische Codierung

Seminar Kompressionsalgorithmen Huffman-Codierung, arithmetische Codierung Huffman-Codierung, arithmetische Codierung Theoretische Informatik RWTH-Aachen 4. April 2012 Übersicht 1 Einführung 2 3 4 5 6 Einführung Datenkompression Disziplin,die Kompressionsalgorithmen entwirft

Mehr

9 Minimum Spanning Trees

9 Minimum Spanning Trees Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne

Mehr

16 - Kompressionsverfahren für Texte

16 - Kompressionsverfahren für Texte 16 - Kompressionsverfahren für Texte Prof. Dr. S. Albers Kompressionsverfahren für Texte Verlustfreie Kompression Original kann perfekt rekonstruiert werden Beispiele: Huffman Code, Lauflängencodierung,

Mehr

Algorithmen und Datenstrukturen Heapsort

Algorithmen und Datenstrukturen Heapsort Algorithmen und Datenstrukturen 2 5 Heapsort In diesem Kapitel wird Heapsort, ein weiterer Sortieralgorithmus, vorgestellt. Dieser besitzt wie MERGE-SORT eine Laufzeit von O(n log n), sortiert jedoch das

Mehr

Übrigens: um den Algorithmus im Unterricht einzuführen, sind keine Formeln notwendig! Warum reicht die normale ASCII-Codierung nicht aus?

Übrigens: um den Algorithmus im Unterricht einzuführen, sind keine Formeln notwendig! Warum reicht die normale ASCII-Codierung nicht aus? Huffman-Code Dieser Text ist als Hintergrundinformation ausschliesslich für die Lehrperson gedacht. Der Text ist deshalb eher technisch gehalten. Er lehnt sich an das entsprechende Kapitel in "Turing Omnibus"

Mehr

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche: Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 5/ 44 Unser Modell Shannon

Mehr

Grundbegriffe der Informatik Tutorium 3

Grundbegriffe der Informatik Tutorium 3 Grundbegriffe der Informatik Tutorium 3 Tutorium Nr. 16 Philipp Oppermann 18. November 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Definition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen:

Definition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen: HeapSort Allgemeines Sortieralgorithmen gehören zu den am häufigsten angewendeten Algorithmen in der Datenverarbeitung. Man hatte daher bereits früh ein großes Interesse an der Entwicklung möglichst effizienter

Mehr

Strings. Stringsuche, Boyer-Moore, Textkompression, Huffman Codes.

Strings. Stringsuche, Boyer-Moore, Textkompression, Huffman Codes. Strings Stringsuche, Boyer-Moore, Textkompression, Huffman Codes. Suche Substring Häufiges Problem Relevante Beispiele: Suche ein Schlagwort in einem Buch Alphabet: A-Za-z0-9 Suche Virussignatur auf der

Mehr

Codierung, Codes (variabler Länge)

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

Mehr

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

Mehr

Dynamisches Huffman-Verfahren

Dynamisches Huffman-Verfahren Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über

Mehr

15 Optimales Kodieren

15 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

Mehr

a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein:

a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein: 1 Aufgabe 8.1 (P) (2, 3)-Baum a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein: Zeichnen Sie, was in jedem Schritt passiert. b) Löschen Sie die Zahlen 65, 70 und 100 aus folgendem

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

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen

Mehr

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14 Institut für Theoretische Informatik Prof. Dr. Jörn Müller-Quade Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 23/4 Vorname Nachname Matrikelnummer Hinweise Für die

Mehr

3 Quellencodierung. 3.1 Einleitung

3 Quellencodierung. 3.1 Einleitung Source coding is what Alice uses to save money on her telephone bills. It is usually used for data compression, in other words, to make messages shorter. John Gordon 3 Quellencodierung 3. Einleitung Im

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 2016/17 13. Vorlesung Binäre Suchbäume Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I 2 Dynamische Menge verwaltet Elemente einer sich ändernden Menge

Mehr

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005 CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005. Das Problem.. Quellcodierung und Datenkompression. Wir wollen eine Nachricht über einen digitalen Kanal, der nur 0 oder übertragen kann, schicken.

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Übung 8 Dirk Achenbach 7. Februar 2013 I NSTITUT FÜR K RYPTOGRAPHIE UND S ICHERHEIT KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Seminar über Algorithmen, SS2004. Textkompression. von Christian Grümme und Robert Hartmann

Seminar über Algorithmen, SS2004. Textkompression. von Christian Grümme und Robert Hartmann Seminar über Algorithmen, SS2004 Textkompression von Christian Grümme und Robert Hartmann 1. Einleitung Textkompression wird zur Verringerung des Speicherbedarfs und der Übertragungskapazität von allgemeinen

Mehr

Informatik II, SS 2014

Informatik 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

Mehr

Abstrakter Datentyp (ADT): Besteht aus einer Menge von Objekten, sowie Operationen, die auf diesen Objekten wirken.

Abstrakter Datentyp (ADT): Besteht aus einer Menge von Objekten, sowie Operationen, die auf diesen Objekten wirken. Abstrakte Datentypen und Datenstrukturen/ Einfache Beispiele Abstrakter Datentyp (ADT): Besteht aus einer Menge von Objekten, sowie Operationen, die auf diesen Objekten wirken. Datenstruktur (DS): Realisierung

Mehr

Algorithmen und Datenstrukturen II

Algorithmen und Datenstrukturen II Algorithmen und Datenstrukturen II Algorithmen zur Textverarbeitung III: D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009,

Mehr

Algorithmus zur komprimierten Übertragung von Textdaten an mobile Endgeräte

Algorithmus zur komprimierten Übertragung von Textdaten an mobile Endgeräte Fachhochschule Wedel Seminararbeit Algorithmus zur komprimierten Übertragung von Textdaten an mobile Endgeräte Sven Reinck 7. Januar 2007 Inhaltsverzeichnis Inhaltsverzeichnis Motivation 2 Wörterbuch 2.

Mehr

Grundbegriffe der Informatik Tutorium 5

Grundbegriffe der Informatik Tutorium 5 Grundbegriffe der Informatik Tutorium 5 Tutorium Nr. 32 Philipp Oppermann 13. Januar 2015 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Technische Universität München. Fakultät für Informatik. Huffman-Codierung. Proseminar im Rahmen der Vorlesung. Perlen der Informatik.

Technische Universität München. Fakultät für Informatik. Huffman-Codierung. Proseminar im Rahmen der Vorlesung. Perlen der Informatik. Technische Universität München Fakultät für Informatik Huffman-Codierung Proseminar im Rahmen der Vorlesung Perlen der Informatik Thema: Huffman-Codierung von: Martin Klenk gehalten am: 10. Juli 2008 Betreuer:

Mehr

Literatur: Kapitel 2.1 des Skripts Rot-Schwarz-Bäume Kapitel 2.2 des Skripts Treaps Cormen. Kapitel 13, Red-Black-Trees

Literatur: Kapitel 2.1 des Skripts Rot-Schwarz-Bäume Kapitel 2.2 des Skripts Treaps Cormen. Kapitel 13, Red-Black-Trees Algorithmische Anwendungen WS 2006/2007 Praktikum 3: Aufgabe 1: Einfügen eines Knotens ist einen Rot-Schwarz-Baum Aufgabe 2: Erklärungen für die Beobachtungen auf Folie 2.1/67 Aufgabe 3: Zeige wie RB-DELETE-FIXUP

Mehr

Arithmetisches Codieren

Arithmetisches Codieren Arithmetisches Codieren 1. Motivation: Als Alternative zum arithmetischen Codieren bot sich damals als effizientester Algorithmus das Huffmann-Coding an. Dieses jedoch hatte einen entscheidenden Nachteil:

Mehr

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Heaps. Vorlesung 8: Heapsort (K6) Joost-Pieter Katoen. 7. Mai 2015 Datenstrukturen und Algorithmen Vorlesung 8: (K6) 1 Joost-Pieter Katoen Lehrstuhl für Informatik Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 7. Mai 015 3 Joost-Pieter

Mehr

1. Übungsblatt zu Algorithmen II im WS 2011/2012

1. Übungsblatt zu Algorithmen II im WS 2011/2012 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders Moritz Kobitzsch, Dennis Schieferdecker. Übungsblatt zu Algorithmen II im WS 0/0 http://algo.iti.kit.edu/algorithmenii.php

Mehr

Präfixcodes und der Huffman Algorithmus

Präfixcodes und der Huffman Algorithmus Präfixcodes und der Huffmn Algorithmus Präfixcodes und Codebäume Im Folgenden werden wir Codes untersuchen, die in der Regel keine Blockcodes sind. In diesem Fll können Codewörter verschiedene Länge hben

Mehr

8.1.3 Operation Build-Max-Heap Operation zur Konstruktion eines Heaps Eingabe: Feld A[1..n], n = länge(a) BUILD-MAX-HEAP (A)

8.1.3 Operation Build-Max-Heap Operation zur Konstruktion eines Heaps Eingabe: Feld A[1..n], n = länge(a) BUILD-MAX-HEAP (A) Stand der Vorlesung: Datenstruktur Heap: fast vollständiger Binärbaum MaxHeap: sortierter Heap, größtes Element an Wurzel Sortierverfahren: HeapSort: Sortieren eines Feldes A[1.. n] Idee: in place: Feld

Mehr

Technische Universität München

Technische Universität München Stand der Vorlesung: Datenstruktur Heap: fast vollständiger Binärbaum MaxHeap: sortierter Heap, größtes Element an Wurzel Sortierverfahren: HeapSort: Sortieren eines Feldes A[1.. n] Idee: in place: Feld

Mehr

Greedy Algorithmen. Grundlegendes. Organisatorisches. VL-21: Greedy Algorithmen. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger

Greedy Algorithmen. Grundlegendes. Organisatorisches. VL-21: Greedy Algorithmen. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Organisatorisches VL-21: Greedy Algorithmen (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Sprechstunde: Mittwoch 11:15 12:00 Übungen: Tim

Mehr

Optimalcodierung. Thema: Optimalcodierung. Ziele

Optimalcodierung. Thema: Optimalcodierung. Ziele Optimalcodierung Ziele Diese rechnerischen und experimentellen Übungen dienen der Vertiefung der Kenntnisse im Bereich der Optimalcodierung, mit der die Zeichen diskreter Quellen codiert werden können.

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

2. Grundlagen. Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten.

2. Grundlagen. Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten. 2. Grundlagen Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten. Laufzeitverhalten beschreiben durch O-Notation. 1 Beispiel Minimum-Suche Eingabe bei Minimum

Mehr

14. Rot-Schwarz-Bäume

14. 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).

Mehr

Graphalgorithmen 2. Dominik Paulus Dominik Paulus Graphalgorithmen / 47

Graphalgorithmen 2. Dominik Paulus Dominik Paulus Graphalgorithmen / 47 Graphalgorithmen Dominik Paulus.0.01 Dominik Paulus Graphalgorithmen.0.01 1 / 7 1 Spannbäume Kruskal Prim Edmonds/Chu-Liu Datenstrukturen Fibonacci-Heap Union/Find Kürzeste Pfade Dijkstra Bellman-Ford

Mehr

Heapsort / 1 A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8]

Heapsort / 1 A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] Heapsort / 1 Heap: Ein Array heißt Heap, falls A [i] A [2i] und A[i] A [2i + 1] (für 2i n bzw. 2i + 1 n) gilt. Beispiel: A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] Heapsort / 2 Darstellung eines Heaps als

Mehr

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele Organisation Was kommt zum Test? Buch Informatik Grundlagen bis inkl Kapitel 74 Wissensfragen und Rechenbeispiele 3 Vorträge zur Übung Informationstheorie, Huffman-Codierung und trennzeichenfreie Codierung

Mehr

Informatik II Prüfungsvorbereitungskurs

Informatik II Prüfungsvorbereitungskurs Informatik II Prüfungsvorbereitungskurs Tag 4, 23.6.2016 Giuseppe Accaputo g@accaputo.ch 1 Programm für heute Repetition Datenstrukturen Unter anderem Fragen von gestern Point-in-Polygon Algorithmus Shortest

Mehr

Beispiellösung zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 5

Beispiellösung zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 5 Robert Elsässer Paderborn, den 15. Mai 2008 u.v.a. Beispiellösung zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 5 AUFGABE 1 (6 Punkte): Nehmen wir an, Anfang bezeichne in einer normalen

Mehr

11. Elementare Datenstrukturen

11. Elementare Datenstrukturen 11. Elementare Datenstrukturen Definition 11.1: Eine dynamische Menge ist gegeben durch eine oder mehrer Mengen von Objekten sowie Operationen auf diesen Mengen und den Objekten der Mengen. Dynamische

Mehr

(Prüfungs-)Aufgaben zur Codierungstheorie

(Prüfungs-)Aufgaben zur Codierungstheorie (Prüfungs-)Aufgaben zur Codierungstheorie 1) Gegeben sei die folgende CCITT2-Codierung der Dezimalziffern: Dezimal CCITT2 0 0 1 1 0 1 1 1 1 1 0 1 2 1 1 0 0 1 3 1 0 0 0 0 4 0 1 0 1 0 5 0 0 0 0 1 6 1 0 1

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 206 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Organisatorisches Weiterer Ablauf: heute und Donnerstag,

Mehr

Technische Universität Wien Institut für Computergraphik und Algorithmen Abteilung für Algorithmen und Datenstrukturen

Technische Universität Wien Institut für Computergraphik und Algorithmen Abteilung für Algorithmen und Datenstrukturen Technische Universität Wien Institut für Computergraphik und Algorithmen Abteilung für Algorithmen und Datenstrukturen 186.114 Algorithmen und Datenstrukturen 1 UE 2.0 186.099 Programmiertechnik und theoretische

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Darstellung von Zeichen und

Mehr

1 Kürzeste Pfade in Graphen

1 Kürzeste Pfade in Graphen Praktikum Algorithmen-Entwurf (Teil 3) 03.11.2011 1 1 Kürzeste Pfade in Graphen Es sei ein gerichteter Graph G = (V, E) mit V = n Knoten, E = m Kanten und Kantengewichten c : E R gegeben. Ein Pfad in G

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

JKU Young Scientists Matheseminar

JKU Young Scientists Matheseminar JKU Young Scientists Matheseminar Matheseminar WS 2013/14 Codierung und Information Das grundlegende Problem der Kommunikation besteht darin, an einer Stelle entweder genau oder angenähert eine Nachricht

Mehr

Beispiellösungen zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 6

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

Mehr

Algorithmen auf Sequenzen

Algorithmen auf Sequenzen Algorithmen auf Sequenzen Vorlesung von Prof. Dr. Sven Rahmann im Sommersemester 2008 Kapitel 4 Reguläre Ausdrücke Webseite zur Vorlesung http://ls11-www.cs.tu-dortmund.de/people/rahmann/teaching/ss2008/algorithmenaufsequenzen

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 7 (21.5.2014) Binäre Suche, Hashtabellen I Algorithmen und Komplexität Abstrakte Datentypen : Dictionary Dictionary: (auch: Maps, assoziative

Mehr

Notation und Einführung

Notation und Einführung Skriptteil zur Vorlesung: Proinformatik - Funktionale Programmierung Dr. Marco Block-Berlitz 30.Juli 2009 Notation und Einführung Der folgende Abschnitt gibt eine kurze Einführung in die Codierungstheorie.

Mehr

Teil 1: Suchen. Ausgeglichene Bäume B-Bäume Digitale Suchbäume. M.O.Franz, Oktober 2007 Algorithmen und Datenstrukturen - Binärbäume 1-1

Teil 1: Suchen. Ausgeglichene Bäume B-Bäume Digitale Suchbäume. M.O.Franz, Oktober 2007 Algorithmen und Datenstrukturen - Binärbäume 1-1 Teil : Suchen Problemstellung Elementare Suchverfahren Hashverfahren Binäre Suchbäume (Wiederholung aus Prog 2) Bäume: Begriffe, Eigenschaften und Traversierung Binäre Suchbäume Gefädelte Suchbäume Ausgeglichene

Mehr

Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert.

Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert. Anwendungen von Bäumen 4.3.2 Huffman Code Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert. => nutzbar für Kompression Code fester

Mehr

Huffman-Kodierung. Fachbereich Medieninformatik. Hochschule Harz. Huffman-Kodierung. Referat. Henner Wöhler. Abgabe:

Huffman-Kodierung. Fachbereich Medieninformatik. Hochschule Harz. Huffman-Kodierung. Referat. Henner Wöhler. Abgabe: Fachbereich Medieninformatik Hochschule Harz Huffman-Kodierung Referat Henner Wöhler 11459 Abgabe: 15.01.2007 Inhaltsverzeichnis Einleitung...I 1. Entropiekodierung...1 1.1 Morse Code...2 1.2 Shannon-Fano-Kodierung...3

Mehr

String - Matching. Kapitel Definition

String - Matching. Kapitel Definition Kapitel 1 String - Matching 1.1 Definition String - Matching ( übersetzt in etwa Zeichenkettenanpassung ) ist die Suche eines Musters ( Pattern ) in einem Text. Es findet beispielsweise Anwendung bei der

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 5. Vorlesung Uwe Quasthoff Abteilung Automatische Sprachverarbeitung Institut für Informatik Universität Leipzig 9. Mai 2012 1 / 35 Datenkompression Bisheriges Hauptziel

Mehr

Codes on Graphs: Normal Realizations

Codes on Graphs: Normal Realizations Codes on Graphs: Normal Realizations Autor: G. David Forney, Jr. Seminarvortrag von Madeleine Leidheiser und Melanie Reuter Inhaltsverzeichnis Einführung Motivation Einleitung Graphendarstellungen Trellis

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Prioritätswarteschlangen Maike Buchin 18. und 23.5.2017 Prioritätswarteschlange Häufiges Szenario: dynamische Menge von Objekten mit Prioritäten, z.b. Aufgaben, Prozesse, in der

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 01/13 6. Vorlesung Prioritäten setzen Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Guten Morgen! Tipps für unseren ersten Test am 0. November: Lesen

Mehr

Klausur Digitale Medien

Klausur Digitale Medien Klausur Digitale Medien Sommersemester 2003 LMU München LFE Medieninformatik Prof. H. Hußmann Dauer: 90 Minuten Auf jedes Blatt sind Name und Matrikelnummer einzutragen! Blätter ohne Namen oder ohne Matrikelnummer

Mehr

Wie muss der Eingabetext beschaffen sein, damit er sich gut komprimieren lässt?

Wie muss der Eingabetext beschaffen sein, damit er sich gut komprimieren lässt? Lernaufgabe 1a Beim Kofferpacken können wir durch Druck die Luft herauslassen und bringen somit mehr Kleidungsstücke in den Koffer. Im Unterricht haben wir vom Huffman-Code gehört und wissen, dass er nach

Mehr

Kap. 6.6: Kürzeste Wege

Kap. 6.6: Kürzeste Wege Kap. 6.6: Kürzeste Wege Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 1./. VO DAP SS 009./9. Juli 009 1 Nachtest für Ausnahmefälle Di 1. Juli 009, 16:00 Uhr,

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Heaps Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 469 Prioritätswarteschlange Problem Häufig ist das Prinzip einer einfachen Warteschlangen-Datenstruktur

Mehr

Übungsblatt Nr. 7. Lösungsvorschlag

Übungsblatt Nr. 7. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Nico Döttling Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 7 svorschlag Aufgabe (K)

Mehr

Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem

Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem Andreas Moser Dietmar Ebner Christian Schauer Markus Bauer 9. Dezember 2003 1 Einführung Der in der Vorlesung gezeigte Algorithmus für das Steiner

Mehr

NAME, VORNAME: Studiennummer: Matrikel:

NAME, VORNAME: Studiennummer: Matrikel: TU Ilmenau, Fakultat IA Institut für Theoretische Informatik FG Komplexitätstheorie und Effiziente Algorithmen Prof. Dr. (USA) M. Dietzfelbinger Klausur Algorithmen und Datenstrukturen SS08, Ing.-Inf.

Mehr

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) Berlin, 21. Februar 2013 Name:... Matr.-Nr.:... Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) 1 2 3 4 5 6 7 8 9 Σ Bearbeitungszeit: 90 min. max. Punktezahl:

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

Erinnerung: das Knapsack-Problem

Erinnerung: das Knapsack-Problem Erinnerung: das Knapsack-Problem Das 0-1-Knapsack-Problem: Wähle aus n egenständen, wobei der i-te egenstand den Wert v i und das ewicht w i besitzt Maximiere den esamtwert bei vorgegebenem Höchstgewicht

Mehr

Seminar. Codierungstheorie

Seminar. Codierungstheorie Seminar Codierungstheorie Lempel-Ziv-Verfahren Informatik Sommersemester 25 Tim Schweisgut, Juni 25 Inhalt INHALT... 2 WÖRTERBUCHMETHODEN... 3 Statische Wörterbuchmethoden... 3 Beispiel:... 3 Bemerkung:...

Mehr

Kap. 4.7 Skiplisten. 14./15. VO DAP2 SS /16. Juni 2009

Kap. 4.7 Skiplisten. 14./15. VO DAP2 SS /16. Juni 2009 Kap. 4.7 Skiplisten Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 14./15. VO DAP2 SS 2008 9./16. Juni 2009 1 2. Übungstest Termin: Di 16. Juni 2009 im AudiMax,

Mehr

Informatik II, SS 2014

Informatik 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

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Informationstheorie INSTITUT FÜR THEORETISCHE KIT 8.2.22 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik INSTITUT

Mehr

Eigenschaften von Kompressionsverfahren

Eigenschaften von Kompressionsverfahren 6 Textkompression Eigenschaften von Kompressionsverfahren Das Ziel der Datenkompression ist es, eine gegebene Information (Datenquelle) auf eine kompaktere Weise zu repräsentieren. Dies geschieht, indem

Mehr

6. Komprimierung. (Text)komprimierung ist ein Wechsel der Repräsentation von Daten, so daß sie weniger

6. Komprimierung. (Text)komprimierung ist ein Wechsel der Repräsentation von Daten, so daß sie weniger Komprimierung 6. Komprimierung (Text)komprimierung ist ein Wechsel der Repräsentation von Daten, so daß sie weniger Platz brauchen Motivation: beschleunigt Plattenzugriffe oder Datenübertragungen Voraussetzung:

Mehr

Übung zur Vorlesung. Informationstheorie und Codierung

Übung zur Vorlesung. Informationstheorie und Codierung Übung zur Vorlesung Informationstheorie und Codierung Prof. Dr. Lilia Lajmi Juni 25 Ostfalia Hochschule für angewandte Wissenschaften Hochschule Braunschweig/Wolfenbüttel Postanschrift: Salzdahlumer Str.

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

Informatik II, SS 2016

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

Mehr

p = (v 0, v 1,..., v k )

p = (v 0, v 1,..., v k ) 1 Routenlaner Hamburg 300 km 200 km Berlin 450 km Köln 200 km 400 km Frankfurt 50 km 200 km 150 km Mannheim Saarbrücken 100 km 250 km Stuttgart 200 km Dresden 300 km Nürnberg 200 km München Berechne den

Mehr

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie

Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x

Mehr

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1 Allgemeines. Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition.. (a) Ein Graph G =(V, E) heißt kreisfrei, wenn er keinen Kreis besitzt. Beispiel: Ein kreisfreier Graph: FG KTuEA, TU Ilmenau

Mehr

Algorithmen und Datenstrukturen VO 3.0 Vorlesungsprüfung 19. Oktober 2007

Algorithmen und Datenstrukturen VO 3.0 Vorlesungsprüfung 19. Oktober 2007 Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen 1 186.089 VO 3.0 Vorlesungsprüfung 19. Oktober

Mehr

Codes on Graphs: Normal Realizations

Codes on Graphs: Normal Realizations Codes on Graphs: Normal Realizations Autor: G. David Forney Seminarvortrag von Madeleine Leidheiser und Melanie Reuter 1 Inhaltsverzeichnis: 1. Einführung 3 1.1 Motivation 3 1.2 Einleitung 3 2. Graphendarstellungen

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 217 Patrick Schäfer, Humboldt-Universität zu Berlin Agenda: Graphen, Suchbäume, AVL Bäume Heute: Graphen und Bäume Binäre Suchbäume AVL-Bäume Nächste

Mehr