Ziv-Lempel-Kompression von André Lichei
|
|
- Jörg Wagner
- vor 6 Jahren
- Abrufe
Transkript
1 Ziv-Lempel-Kompression von André Lichei Einführung: Die wichtigsten Ansprüche,die an einen Komprimierungs-Algorithmus gestellt werden, sind: - eine hohe Komprimierungsrate - für alle Typen von Daten ( daher ohne Kenntnis über die Eigenart der Daten ) - hohe Encode- und Decode-Geschwindigkeit - geringe Ansprüche an die Hardware Die Ziv-Lempel Verfahren sind, in der Gruppe der verlustfrei packenden Algorithmen, die, die diesem Ideal noch am nächsten kommen. Die ersten Verfahren von Jacob Ziv und Abraham Lempel sollen in dieser Arbeit vorgestellt werden. Die Grundidee all dieser Verfahren ist es eine Zeichenkette, die schon einmal gesendet/gespeichert wurde und nun wieder auftaucht, durch einen Zeiger auf die Stelle wo sie eher auftauchte oder durch einen Zeiger auf ein Wörterbuch zu ersetzen. Damit soll die Länge der zu codierenden Zeichenkette beträchtlich gekürzt werden. LZ77 Der LZ77 Algorithmus wurde 1977 vorgestellt. Die Idee: Man legt ein Fenster fester Länge über den bisher gesendeten String. Nun versucht man, in diesem Fenster den längsten Teilstring zu finden, der die nächsten Zeichen repräsentiert. Verschlüsselungsprozeß Es wird als erstes ein Fenster F der Festen Länge LF angelegt und mit r Nullen und den ersten q Zeichen des zu codierenden Strings Q gefüllt. Als einen Präfix der Länge LP einer Zeichenkette def. ich die ersten LP Zeichen dieser Zeichenkette. Es wird nun die längste Zeichenkette P gesucht, die einem Präfix der Zeichenkette F(r+1,f) entspricht. Diese gesuchte Zeichenkette muß in F(1,r) beginnen. Sie darf aber über die Grenze r im Fenster F hinausgehen. Bsp.: LF= 10 r=5 q=5 Q: F( ) als P kann man zu Bsp. den String angeben der bei F(5) beginnt und die Länge 2 hat. Gespeichert oder gesendet wird jetzt als erstes die Startposition Ps von P, dann dessen Länge Pl und dann das nächste Zeichen Z. Bsp.: Ps=5 P l=2 Z='1' Die Codewortlänge läßt sich recht einfach ermitteln. Die Bitkette, die Ps darstellt, muß r Positionen abbilden können und muß damit eine Länge von Log2(r) aufgerundet haben. PL kann max. der Größe des noch nicht codierten Strings ( die leere Zeichenkette ist eingeschlossen ) im Fenster entsprechen. Es ist für die Implementierung aber zweckmäßig,
2 das letzte Zeichen nicht zu codieren. Dies brauchen wir noch um es als Z im Codewort zu senden. Wir brauchen also für PL Log2(q-1+1) aufgerundet Bits. Die Anzahl an Bits, die wir für das Senden/Speichern des nächsten Zeichens benötigen, hängt von dem Code, in dem es gesendet wird ab. Mindestens benötigen wir log2(anzahl der Zeichen im Alphabet)- aufgerundet - Bits. Es gibt sich daher eine Codewortlänge von (log2(r)+log2(q)+log2(anzahlderzeichen)). Bsp.: Codewort: (5,2,'1') Es ist sinnvoll bei der Position das Zählen bei 0 zu beginnen. Bei der Länge aber bei 1, da die 0 den leeren String symbolisiert. Nun wird das Fenster um Pl+1 Zeichen nach rechts verschoben ( es werden die nächsten Pl+1 Zeichen eingelesen). Bsp.: F( ) Der Verschlüsselungsprozeß geschieht nun wieder genauso wie oben. Bsp.: nächste Codewort (4,2,1) neues Fenster F( ) nächstes Codewort(1,4,1) neues Fenster F( ) nächstes Codewort (2,2,1) Der Code zum Schluß (5,2,1) (4,2,1) (1,4,1) (2,2,1) bit 15 Bit Original Der Code ist recht lang, was daran liegt, daß wir eine sehr schlechte Fenstergröße gewählt haben. Zuerst sollte man immer Fenster der Größe 2^n wählen. Dann ist die Wahrscheinlichkeit, ein großes P zu finden bei einem großem r besser, wie auch die max. Länge von P mit wachsendem q steigt, so dass mit größeren Fenstern wesentlich bessere Kompriemierungsraten erzeugt werden können. Entschlüsselung Zur Entschlüsselung benutzt der Decoder ein ähnliches Fenster. Es wird aber nur P und das nächste Zeichen an die Ausgabe gesendet und das Fenster verschoben, so dass die Decodierung sehr schnell geschieht. Bsp.: Code (5,2,1) (4,2,1) (1,4,1) (2,2,1) F( ) Ausgabe: 00 1 F( ) Ausgabe: 01 1 F( ) Ausgabe: F( ) Ausgabe: 101
3 Anwendung LZSS LZB LZH Bei dem vorgestellten LZ77 Algorithmus fallen zwei Dinge ins Auge. Zum einen muß immer ein P gesendet werden auch wenn Pl=0 ist. Zum anderen wird immer das nächste Zeichen mitgesendet auch wenn es gar nicht nötig ist. Im LZSS wird entweder ein Zeichen oder P gesendet. Um zwischen Zeichen und zu unterscheiden wird ein Extrabit vorangestellt. Es wird immer dann ein Zeichen gesendet, wenn der Code für das gefundene P länger ist als der Präfix selbst. Das Codewort hat nun entweder die Länge 1+log2(ZeichenImAlphabet) oder 1+log2(r)+log2(q). Jetzt ist es auch bei der Pl sinnvoll mit Null das Zählen zu Beginn (leere Zeichenketten werden ja nicht mehr gesendet). Das längste mögliche P darf jetzt eine Länge Pl=q haben, da wir Z nicht mehr senden. erlaubt verschieden große Zeiger Beruht auf LZSS Zeiger und Zeichen werden mit Huffman codiert, Nachteil: sehr langsam; Probleme mit großen Zeiger zip gzip Sehr ähnlich dem LZSS verfahren verwendet aber noch Huffman Bäume für die Zeiger. Andere Verwaltung, um Zeichenketten zu finden. acb Sehr gute Kompresionsrate aber auch sehr kompliziert. LZ 78 Der LZ 78 wurde 1978 vorgestellt. In diesem Algorithmus wird der Datenstrom in Phrasen unterteilt, wobei keine identischen Phrasen entstehen sollen. Der Algorithmus beginnt mit Phrasen von einem Zeichen Länge. Nun sucht er im Datenstrom die kürzeste noch nicht bekannte Phrase. Alle so während der Codierung entstehenden Phrasen werden in einem Wörterbuch gespeichert. Jede neue Phrase besteht genau aus einer schon codierten Phrase und einem Zeichen. ( man kann auch die längste bekannte Phrase suchen und ein Zeichen anhängen ) Bsp.: Zeichenfolge: Phrasen: Bits Somit kann jede neue Phrase als Zeiger auf eine alte Phrase und einem neuen Zeichen kodiert werden.
4 Bsp.: Wörterbuch: 0 <> Gesendet/ gespeichert werden nun Codewörter bestehend aus einem Zeiger, der auf einen Wörterbucheintrag zeigt und einem Zeichen. Um die Codewortlänge zu bestimmen, müssen wir nun die Größe der Zeiger bestimmen. Eine Möglichkeit wäre, alle Phrasen zu finden, zu zählen und eine feste Zeigerlänge zu bestimmen. In unserem Bsp. würde das Codewort folglich aus log2(8)=>3 Bits + 1 Bit für das Zeichen bestehen Bsp.: Zeichenkette codiert Bits 0,'1' 0,'0' 1,'1' 2,'1' 4,'0' 2,'0' 1,'0' Ein solcher Code ist nicht besonders sinnvoll, da das Wörterbuch am Anfang sehr klein ist, und die Zeiger sehr kurz sind. Für die Codierung des Zeigers reicht somit eine Bitlänge die der Anzahl der bisher aufgetretenen Phrasen entspricht log2(i+1) Bsp.: Zeichenkette codiert Bits Bei dem bisher vorgestellten Algorithmus kann das Wörterbuch bis in die Unendlichkeit wachsen. In der Praxis wird dem Wörterbuch eine max. Größe vorgegeben. Ist die Größe erreicht wird es einfach gelöscht und von vorne begonnen. In diesem Bsp. hat der Algorithmus die Zeichenkette nicht komprimiert sondern expandiert. Das ist aber ein Problem der Kürze der Zeichenkette. Bei langen Zeichenketten, wo dann auch die Wörterbucheinträge entsprechend lang werden, können recht gute Ergebnisse erzielt werden. Decodierung: Dem Decoder muß das Wörterbuch nicht extra gesendet werden. Jede Phrase die er empfängt speichert er in einem Wörterbuch. So können dann später empfangene Phrasen mit Hilfe des Wörterbuches entschlüsselt werden. Bsp.: Code (0,'1') (0,'0') (1,'1') (2,'1') (4,'0') (2,'0') (1,'0') Wörterbuch: 0 <> erkannter Eintrag Ausgabe Neuer Wörterbucheintrag <> '1' 1 '1' <> '0' 2 '0' '1' '11' 3 '11' '0' '01' 4 '01' '01' '010' 5 '010' '0' '00' 6 '00' '1' '11' 7 '10'
5 Verwaltung des Wörterbuches: Das Wörterbuch kann man entweder über eine Tabelle oder einen Baum verwalten. Ersteres ist auf der Decoderseite sinnvoll, auf der Encoderseite aber sehr langsam! Ein Bsp. für einen Baum habe ich leider nicht gefunden. Es ist aber nicht sehr schwer zu mindestens eine ganz einfache Variante zu erstellen. Eine Lsg. ist es, einen Baum zu generieren, dessen Knoten jeweils eine Wörterbuchnummer enthalten. Die Äste stehen jeweils für ein Zeichen. Die Wurzel repräsentiert daher die leere Zeichenkette. Geht man den Baum entlang, erhält man eine Zeichenkette. Die Nummer, die man in dem Knoten an ihrem Ende findet, ist der Wörterbucheintrag, unter dem man diese Zeichenkette findet. Ist nun eine Zeichenkette zu codieren, geht man den Baum entlang bis kein Zeichen mehr der zu kodierenden Zeichenkette entspricht. Die Nummer im letzten gefunden Knoten entspricht der Nummer des zu sendenden Wörterbucheintrages. Dann sendet man das nächste Zeichen. An den Knoten fügt man den Ast der dem neuen Zeichen entspricht. In das Blatt trägt man eine neue Nummer ein. Bsp.: Zu Beginn besteht der Baum nur aus der Wurzel. Sie enthält die Nummer 0. Ein Zähler für die schon vorhandenen Wörterbucheinträge steht auf 0. Zu codierende Zeichenkette: Das Alphabet besteht aus nur zwei Zeichen. Man erhält somit einen Binärbaum. Der linke Ast eines Knotens soll der '1' entsprechen. Der rechte der '0' Baum Start Der Encoder geht die Zeichenkette und den Baum entlang; Stoppt an der Wurzel sendet die 0 und das nächstes Zeichen die '1'.Fügt einen neuen Ast an die Wurzel an und erhöht den Zähler um eins und ordnet dem neu entstandenen Knoten die Nummer 1 zu '1'/ (1) Zeichenkette wie oben Zeichenkette Jetzt stoppt der Encoder bei dem Vergleich am Knoten 1 sendet die 1 und das nächste Zeichen eine '1' Hängt dann einen neuen Ast an und erhöht den Zähler um eins. Dann ordnet er die neue Nummer zu '1'/ (3)
6 Zeichenkette Stopp an Knoten 2 sendet 2,1 hängt Knoten mit Nummer 4 an '1'/ '0'/ (3) (4) Zeichenkette Stopp an Knoten 4 sendet 4,hängt Ast mit Nummer 5 an '1'/ '1'/ (3) (4) '0'\ (5) Zeichenkette: 0010 Stopp an Knoten 2 sendet 2,0 hängt Ast mit Nummer 6 an '1'/ (3) (4) (6) '0'\ (5) Zeichenkette: 10 Stopp an Knoten 1 sendet 1,0 hängt Ast mit Nummer 7 an (3) (7) (4) (6) '0'\ (5) Ein solcher Baum läßt sich schnell und einfach erzeugen und ist wesentlich schneller zu durchsuchen als eine Liste. Die max. Anzahl an Söhnen eines jedem Knoten entspricht der Anzahl der Zeichen im Alphabet. Anwendungen: LZW Auch beim LZ78 Algorithmus fällt auf, daß immer ein Extrazeichen mitgesendet wird auch wenn das gar nicht nötig wäre. Im LZW Algorithmus ist das nicht so. Dieser beginnt nicht mit einem leeren Wörterbuch. Das Wörterbuch wird gleich zu Beginn mit allen bekannten Zeichen initialisiert. Nun wird die längste bekannte Zeichenkette gesucht und ihr Index gesendet. Danach wird diese Zeichenkette um das
7 nächste Zeichen erweitert und unter einem neuen Index in das Wörterbuch aufgenommen. Bsp.: Wörterbuch mit 256 Einträgen (ASCI-Tabelle von 0 bis 255) Eingabe: Erkanntes Muster Neuer Wörterbucheintrag LZWLZ78LZ77 L LZ (256) ZWLZ78LZ77 Z ZW (257) WLZ78LZ77 W WL (258) LZ78LZ77 LZ LZ7(259) 78LZ (260) 8LZ77 8 8L(261) LZ77 LZ7 LZ77(262) 7 7 Decodierung Auch der Decoder beginnt mit dem vorinitialisierten Wörterbuch. Empfangene Zeichenketten werden gepuffert und ausgegeben. Von der nächsten Zeichenkette wird das erste Zeichen an die gepufferte Zeichenkette angehangen und diese dann als neuer Wörterbucheintrag gespeichert. Bsp.: L Z W (256) 7 8 (259) 7 Eingabezeichen Puffer Neuer Wörterbucheintrag L Z L LZ (256) W Z ZW (257) LZ W WL (258) 7 LZ LZ7 (259) (260) LZ7 8 8L (261) 7 LZ7 LZ77(262) Bei genauerer Betrachtung sieht man, daß das Wörterbuch des Decoder dem des Encoder einen Schritt hinterherhinkt. Das kann zu Problemen beim Decodieren führen. Problemfall K[OMEGA]K [OMEGA]K: K ist ein beliebiges Zeichen und [OMEGA] eine Zeichenkette, wobei K[OMEGA] schon im Wörterbuch vermerkt ist. Es wird nun der Index von K[OMEGA] gesendet, und der Eintrag K[OMEGA]K im Wörterbuch vermerkt. Im nächsten Schritt wird genau dieser Eintrag als der längste identifiziert und gesendet. Dieser Wörterbucheintrag ist dem Decoder in diesem Moment aber noch gar nicht bekannt.
8 Bsp.: APAPAPAPAP Codierung Eingabe: Erkanntes Muster Neuer Wörterbucheintrag 1 APAPAPAPAP A AP(256) 2 PAPAPAPAP P PA(257) 3 APAPAPAP AP APA(258) 4 APAPAP APA APAP(259) 5 PAP PA PAP(260) 6 P P Decodierung: A P (256) (258) (257) P Eingabezeichen Puffer Neuer Wörterbucheintrag 1 A 2 P A AP (256) 3 AP P PA (257) 4????? AP K[OMEGA]K Fall ist aufgetreten d.h. erstes Zeichen der nächsten Zeichenkette ist erstes Zeichen der vorhergehenden Zeichenkette also A 4 A... AP APA (258) -->4 APA AP APA (258) 5 PA APA APAP (259) 6 P PA PAP (260) Abschließend sei bemerkt, daß in der Standard-Implemetation das Wörterbuch eine Größe von 4096 Einträgen hat. Die Zeiger auf die Einträge sind statisch 12 Bits groß. Ist das Wörterbuch voll, muß der Encoder damit auskommen. LZC LZT Wird von dem Programm Compress unter Unix verwendet. Hier muß das Wörterbuch keine feste Größe haben, es wächst bis zu einer max. Größe, die vom User angegeben wird. Die Zeiger sind von dynamischer Größe und beginnen bei 9 Bit. Ist das Wörterbuch gefüllt überprüft ein Kontrollalgorithmus die Kompresionsrate. Sinkt diese unter einen bestimmten Wert, wird das gesamte Wörterbuch gelöscht und neu aufgebaut. Genauso wie LZC - das Wörterbuch wird aber nicht ganz gelöscht sondern nur wenig genutzte Einträge werden entfernt. LZMW wie LZT; es wird aber nicht nur das erste Zeichen angehängt, um einen neuen Wörterbucheintrag zu bekommen sondern es werden die letzten beiden Wörterbucheinträge verbunden.
9 Vorteil: Wörterbuch paßt sich schneller an. Einträge werden schnell länger. Nachteil: sehr komplizierte Wörterbuchverwaltung. Zum Abschluß sei noch angemerkt, das es noch eine ganze Reihe anderer Algorithmen gibt, die auf Lempel-Ziv basieren. Sie alle zu behandeln würde den Rahmen dieser Ausarbeitung aber sprengen. Trotzdem ist es bestimmt noch möglich, Verbesserungen der Algorithmen zu finden. Mehrere verschiedene Kompressionsalgorithmen miteinander zu kombinieren ist vermutlich ein guter Ansatz. Quellen: Gabriele Buch, Fehlerrobuste Verfahren zur Quellen- und Kanalcodierung von Binär und ASCII- Quellen. Mark Nelson, Fast String Searching with Suffix Trees. Marek Tomczyk, Lempel-Ziv-Kodierung.
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
MehrEigenschaften 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
MehrSeminar ü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
MehrBasisinformationstechnologie II
Basisinformationstechnologie II Sommersemester 2014 28. Mai 2014 Algorithmen der Bildverarbeitung I: Kompression Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G.
MehrAlgorithmus 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.
Mehr6. 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:
MehrDatenkompression: Lempel-Ziv-Codierung
Gliederung 1) Einleitung 2) Abraham Lempel, Jacob Ziv, Terry Welch 3) Tabellengestützte Modellierung 4) LZ77 5) LZ78 6) LZW 7) Einsatzgebiete 8) Zusätzliche Erläuterungen 9) Quellen 1) Einleitung Aufgabe
MehrKodierungsalgorithmen
Kodierungsalgorithmen Komprimierung Verschlüsselung Komprimierung Zielsetzung: Reduktion der Speicherkapazität Schnellere Übertragung Prinzipien: Wiederholungen in den Eingabedaten kompakter speichern
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 6. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Datenkomprimierung Bei den meisten bisher betrachteten
MehrA2.3: Zur LZ78 Komprimierung
A2.3: Zur LZ78 Komprimierung Im Gegensatz zur Entropiecodierung nach Huffman oder Shannon, bei der man die Quellenstatistik (möglichst genau) kennen muss, sind solche Einschränkungen bei den von Abraham
Mehr1. 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
Mehr1 / 33. P.F. Stadler & S. Will (Bioinf, Uni LE) ADS 2, V5 07. Mai / 33
P.F. Stadler & S. Will (Bioinf, Uni LE) ADS 2, V5 07. Mai 204 7 / 33 P.F. Stadler & S. Will (Bioinf, Uni LE) ADS 2, V5 07. Mai 204 8 / 33 ADS: Algorithmen und Datenstrukturen 2 Teil 5 Prof. Peter F. Stadler
MehrProblem: 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
MehrSeminar 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Ü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"
MehrDatenkompression. 1 Allgemeines. 2 Verlustlose Kompression. Holger Rauhut
Datenkompression Holger Rauhut 1. September 2010 Skript für die Schülerwoche 2010, 8.-11.9.2010 Hausdorff Center for Mathematics, Bonn 1 Allgemeines Datenkompression hat zum Ziel, Daten in digitaler Form,
MehrReferat zum Thema Huffman-Codes
Referat zum Thema Huffman-Codes Darko Ostricki Yüksel Kahraman 05.02.2004 1 Huffman-Codes Huffman-Codes ( David A. Huffman, 1951) sind Präfix-Codes und das beste - optimale - Verfahren für die Codierung
Mehr(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
MehrVerlustfreie Kompression
Verlustfreie Kompression Tim Rolff Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg 8. Juni 2016 Tim Rolff
MehrHuffman-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
MehrMathematik für Information und Kommunikation
Mathematik für Information und Kommunikation Am Beispiel des Huffman- Algorithmus Thomas Borys und (Christian Urff) Huffman im Alltag MPEG Telefax JPEG MP3 ZIP avid Huffman avid Huffman [95-999] www.soe.ucsc.edu/people/faculty/huffman.html
MehrTextkomprimierung. Stringologie. Codes. Textkomprimierung. Alle Komprimierung beruht auf Wiederholungen im Text. Textkomprimierung
Stringologie Peter Leupold Universität Leipzig Vorlesung SS 2014 Alle Komprimierung beruht auf Wiederholungen im Text Die Komprimierung muss rückgängig gemacht werden können Je kleiner das Alphabet, desto
MehrTextkompression: Burrows-Wheeler-Transformation
Proseminar Algorithmen der Bioinformatik WS 2010/11 Textkompression: Burrows-Wheeler-Transformation Johann Hawe Johann Hawe, WS 2010/11 1 Gliederung 1. Einleitung 2. BWT Kompressionstransformation 2.1
MehrFolge 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
Mehr15 Optimales Kodieren
15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen
MehrRedundanz. Technische Informationsquelle Entropie und Redundanz Huffman Codierung. Martin Werner WS 09/10. Martin Werner, Dezember 09 1
Information, Entropie und Redundanz Technische Informationsquelle Entropie und Redundanz Huffman Codierung Martin Werner WS 9/ Martin Werner, Dezember 9 Information und Daten Informare/ Informatio (lat.)
MehrÜbung 13: Quellencodierung
ZHAW, NTM, FS2008, Rumc, /5 Übung 3: Quellencodierung Aufgabe : Huffmann-Algorithmus. Betrachten Sie die folgende ternäre, gedächtnislose Quelle mit dem Symbolalphabet A = {A,B,C} und den Symbol-Wahrscheinlichkeiten
MehrDigitalisierung. analoges Signal PAM. Quantisierung
Digitalisierung U analoges Signal t U PAM t U Quantisierung t Datenreduktion Redundanzreduktion (verlustfrei): mehrfach vorhandene Informationen werden nur einmal übertragen, das Signal ist ohne Verluste
MehrAlgorithmen und Datenstrukturen 2-3. Seminar -
Algorithmen und Datenstrukturen 2-3. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 3. Übungsserie: 3 Aufgaben, insgesamt 30 Punkte A7 Huffmann-Codierung
MehrDer LZ77 Algorithmus. von. Stefan Mühlinghaus Matrikelnummer: 11033988 Benutzerkennung: ai495
Der LZ77 Algorithmus von Stefan Mühlinghaus Matrikelnummer: 11033988 Benutzerkennung: ai495 Über den Algorithmus: Der LZ77 Algorithmus wurde von seinen Erfindern Abraham Lempel und Jacob Ziv erstmalig
MehrCodierung, Codes (variabler Länge)
Codierung, Codes (variabler Länge) A = {a, b, c,...} eine endliche Menge von Nachrichten (Quellalphabet) B = {0, 1} das Kanalalphabet Eine (binäre) Codierung ist eine injektive Abbildung Φ : A B +, falls
MehrEine 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
MehrDer RSA-Algorithmus. 2. Anschließend ist n = p q und ϕ (n) = (p 1) (q 1) zu berechnen.
Kapitel 4 Der RSA-Algorithmus Der RSA-Algorithmus ist das heute bekannteste Verfahren aus der Familie der Public-Key-Kryptosysteme. Es wurde 1978 der Öffentlichkeit vorgestellt und gilt bis heute als der
MehrGrundlagen der Technischen Informatik. 2. Übung
Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit Organisatorisches Übungsblätter zuhause vorbereiten! In der Übung an der Tafel vorrechnen! Bei
MehrDef.: Sei Σ eine Menge von Zeichen. Die Menge Σ* aller Zeichenketten (Wörter) über Σ ist die kleinste Menge, für die gilt:
8. Grundlgen der Informtionstheorie 8.1 Informtionsgehlt, Entropie, Redundnz Def.: Sei Σ eine Menge von Zeichen. Die Menge Σ* ller Zeichenketten (Wörter) über Σ ist die kleinste Menge, für die gilt: 1.
MehrDatenkompression. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 167
Datenkompression Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 167 Datenkompression I Wie der Hofmathematikus herausgefunden hatte, läßt sich eine Kodierung durch Wahl einer variablen Wortlänge
MehrDatenkompression. Vortrag von Markus Durzinsky Student der Otto-von-Guericke-Universität Magdeburg
Vortrag am 25. Januar 200 Werner von Siemens Gymnasium Magdeburg Zeitansatz: 5h (inklusive Programmieraufgaben) Datenkompression Vortrag von Markus Durzinsky Student der Otto-von-Guericke-Universität Magdeburg
MehrÜbungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen
Übungen zur Vorlesung Grundlagen der Rechnernetze Zusätzliche Übungen Hamming-Abstand d Der Hamming-Abstand d zwischen zwei Codewörtern c1 und c2 ist die Anzahl der Bits, in denen sich die beiden Codewörter
MehrTechnische Universität München SS 2006 Fakultät für Informatik 12. Oktober 2006 Prof. Dr. A. Knoll. Aufgabe 1 Transferfragen (Lösungsvorschlag)
Technische Universität München SS 2006 Fakultät für Informatik 12. Oktober 2006 Prof. Dr. A. Knoll Lösungsvorschläge der Klausur zu Einführung in die Informatik II Aufgabe 1 Transferfragen (Lösungsvorschlag)
MehrEinführung in die Kodierungstheorie
Einführung in die Kodierungstheorie Einführung Vorgehen Beispiele Definitionen (Code, Codewort, Alphabet, Länge) Hamming-Distanz Definitionen (Äquivalenz, Coderate, ) Singleton-Schranke Lineare Codes Hamming-Gewicht
Mehr2. Digitale Codierung und Übertragung
2. Digitle Codierug ud Üertrgug 2.1 Iformtiostheoretische Grudlge 2.2 Speicheredrf ud Kompressio 2.3 Digitlisierug, Digitle Medie Weiterführede Litertur zum Them Dtekompressio: Khlid Syood: Itroductio
MehrProseminar Kodierverfahren bei Dr. Ulrich Tamm Sommersemester 2003 Thema: Codierung von Bäumen (Prüfer Codes...)
Proseminar Kodierverfahren bei Dr. Ulrich Tamm Sommersemester 2003 Thema: Codierung von Bäumen (Prüfer Codes...) Inhalt: Einleitung, Begriffe Baumtypen und deren Kodierung Binäre Bäume Mehrwegbäume Prüfer
MehrDer Backoff-Algorithmus
Der Backoff-Algorithmus Ausarbeitung im Rahmen der Vorlesung Lokale und Weitverkehrsnetze II (Prof. Koops) SS 2001 3570316 Lars Möhlmann 3570317 Jens Olejak 3570326 Till Tarara Fachhochschule Oldenburg/Ostfriesland/Wilhelmshaven
MehrReferat für Algorithmische Anwendungen WS 2006/ 07: Verlustfreie Datenkompression mit dem Deflate-Algorithmus (LZ77- und Huffman-Codierung)
Referat für Algorithmische Anwendungen WS 2006/ 07: Verlustfreie Datenkompression mit dem Deflate-Algorithmus (LZ77- und Huffman-Codierung) Benedikt Arnold, 11041025, ai686@gm.fh-koeln.de Sebastian Bieker,
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Dynamische Programmierung Einführung Ablaufkoordination von Montagebändern Längste gemeinsame Teilsequenz Optimale
MehrInverted Files for Text Search Engines
Inverted Files for Text Search Engines Justin Zobel, Alistair Moffat PG 520 Intelligence Service Emel Günal 1 Inhalt Einführung Index - Inverted Files - Indexkonstruktion - Indexverwaltung Optimierung
MehrCodierung. 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Übung 1: Quellencodierung
ZHAW, NTM2, Rumc, /7 Übung : Quellencodierung Aufgabe : Huffman-Algorithmus. Betrachten Sie die folgende ternäre, gedächtnislose Quelle mit dem Symbolalphabet A = {A,B,C} und den Symbol-Wahrscheinlichkeiten
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
Mehr12 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang
12 (2-4)-Bäume (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 2. Die Ordnung (maximale Anzahl der Söhne eines Knotens) ist gleich 4 3. Innere Knoten haben 2 Söhne
MehrKapitel 2. Kombinatorische Schaltungen. Codierer und Decodierer
Kapitel 2 Kombinatorische Schaltungen Definition nach DIN 44300/93 Ein Schaltnetz oder kombinatorischer Funktionsblock ist eine Funktionseinheit zum Verarbeiten von Schaltvariablen, deren Wert am Ausgang
MehrCodierung. H.-G. Hopf
Codierung H.-G. Hopf Inhalt Informationsübermittlung Codierung von Zeichen GDI: Codierung / 2 Inhalt Informationsübermittlung Codierung von Zeichen GDI: Codierung / 3 Ideale Kommunikation Übertragungskanal
MehrÜ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.
MehrInformationstheorie und Codierung
Informationstheorie und Codierung 3. Codierung diskreter Quellen Gleichmäßiger Code Ungleichmäßiger Code Fano-, Huffman-Codierung Optimalcodierung von Markoff-Quellen Lauflängencodes nach Golomb und Rice
Mehr15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten
15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten Autoren Rene Beier, MPI Saarbrücken Berthold Vöcking, RWTH Aachen In zwei Monaten startet die nächste Rakete
MehrKapitel 2: Informationstheorie. 3. Quellencodierung
ZHAW, NTM2, Rumc, 2.3-1 Kapitel 2: Informationstheorie 3. Quellencodierung Inhaltsverzeichnis 1. EINLEITUNG... 1 2. QUELLENCODIERUNGSTHEOREM... 2 3. HUFFMAN-QUELLENCODIERUNG... 3 4. DATENKOMPRESSION MIT
MehrPraktikum BKSPP. Aufgabenblatt Nr. 1. 1 Umrechnung zwischen Stellenwertsystemen
Dr. David Sabel Institut für Informatik Fachbereich Informatik und Mathematik Johann Wolfgang Goethe-Universität Frankfurt am Main Praktikum BKSPP Sommersemester 21 Aufgabenblatt Nr. 1 Abgabe: Mittwoch,
MehrAlgorithmen, Datenstrukturen und Programmieren II SS 2001
Algorithmen, Datenstrukturen und Programmieren II SS 2001 1. InfixToPostfixConverter: Üblicherweise werden mathematische Ausdrücke in infix-notation geschrieben, d.h. der Operator steht zwischen den Operanden,
MehrKodierung. Kodierung von Zeichen mit dem ASCII-Code
Kodierung Kodierung von Zeichen mit dem ASCII-Code Weiterführende Aspekte zur Kodierung: Speicherplatzsparende Codes Fehlererkennende und -korrigierende Codes Verschlüsselnde Codes Spezielle Codes, Beispiel
Mehr368 4 Algorithmen und Datenstrukturen
Kap04.fm Seite 368 Dienstag, 7. September 2010 1:51 13 368 4 Algorithmen und Datenstrukturen Java-Klassen Die ist die Klasse Object, ein Pfeil von Klasse A nach Klasse B bedeutet Bextends A, d.h. B ist
MehrPrä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
MehrVerschlüsselung. Kirchstraße 18 Steinfelderstraße 53 76831 Birkweiler 76887 Bad Bergzabern. 12.10.2011 Fabian Simon Bfit09
Verschlüsselung Fabian Simon BBS Südliche Weinstraße Kirchstraße 18 Steinfelderstraße 53 76831 Birkweiler 76887 Bad Bergzabern 12.10.2011 Fabian Simon Bfit09 Inhaltsverzeichnis 1 Warum verschlüsselt man?...3
MehrEinführung in Kompressionstechniken
Einführung in Kompressionstechniken W. Kowarschick 7. Februar 997. November 9 W. Kowarschick Motivation Dateigrößen Text Vektorgraphiken Rasterbilder Tomographien Telephon CD-Stereo Bildfolgen VD7 VD7
MehrProseminar WS 2002/2003
Technische Universität Chemnitz Fakultät für Informatik Professur Theoretische Informatik Proseminar WS 2002/2003 Thema: Datenkompression Dynamisches / Adaptives Huffman-Verfahren Danny Grobe Rainer Kuhn
MehrKodierung. Kodierung von Zeichen mit dem ASCII-Code
Kodierung Kodierung von Zeichen mit dem ASCII-Code Weiterführende Aspekte zur Kodierung: Speicherplatzsparende Codes Fehlererkennende und -korrigierende Codes Verschlüsselnde Codes Spezielle Codes, Beispiel
MehrOrganisation. 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
MehrKryptographie und Codierung für den Mathematikunterricht
Kryptographie und Codierung für den Mathematikunterricht Pädagogische Hochschule Karlsruhe University of Education École Supérieure de Pédagogie Institut für Mathematik und Informatik Th. Borys Was verstehst
MehrEine verlustbehaftete Komprimierung ist es, wenn wir einige Kleidungsstücke zu
Komprimierungen In Netzwerken müssen viele Daten transportiert werden. Dies geht natürlich schneller, wenn die Datenmengen klein sind. Um dies erreichen zu können werden die Daten komprimiert. Das heisst,
Mehr3 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
MehrKryptologie und Kodierungstheorie
Kryptologie und Kodierungstheorie Alexander May Horst Görtz Institut für IT-Sicherheit Ruhr-Universität Bochum Lehrerfortbildung 17.01.2012 Kryptologie Verschlüsselung, Substitution, Permutation 1 / 18
MehrPublic-Key-Kryptographie
Kapitel 2 Public-Key-Kryptographie In diesem Kapitel soll eine kurze Einführung in die Kryptographie des 20. Jahrhunderts und die damit verbundene Entstehung von Public-Key Verfahren gegeben werden. Es
MehrKlausur 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Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung
Ludwig-Maximilians-Universität München WS 2013/14 Institut für Informatik Übungsblatt 10 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung
MehrM. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung
M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales
MehrKanonische Huffman Codes (Canonical Huffman Codes)
Projektarbeit (Canonical Huffman Codes) SS 2008 Studentin: Michaela Kieneke Dozent: Dr. Heiko Körner 0001010110110110010001110110001111100001101000110111100101111110001111000 1010101110101001011100100101011111110000011001011010100101000101010001010
Mehrt r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )
Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen
MehrAlgorithmen und Datenstrukturen SS09
Foliensatz 8 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 29 TU Ilmenau Seite / 54 Binärbäume TU Ilmenau Seite 2 / 54 Binäre Bäume Bäume und speziell
MehrFormale Sprachen und Automaten
Formale Sprachen und Automaten Kapitel 1: Grundlagen Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Ziel Einführung der wichtigsten
MehrSchreibweise in IGOR: 6.02E-23
2. IGOR Objekte 2.1 Variable Eine Variable in IGOR ist eine Zahl, die einen Namen trägt. So ist es zum Beispiel möglich, unter dem Namen var1 die Zahl 4 abzuspeichern. Wichtig hierbei ist, dass IGOR Zahlen
MehrKodieren Von Graphen
Kodieren Von Graphen Allgemeine Anwendungen: Routenplaner Netzpläne Elektrische Schaltungen Gebäudeerkennung aus Luftaufnahmen Definitionen:? Graph Ein Graph G besteht aus einem geordneten Paar G = (V,E)
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
MehrAlgorithmen und Datenstrukturen 1
Algorithmen und Datenstrukturen 1 7. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@informatik.uni-leipzig.de aufbauend auf den Kursen der letzten Jahre von E. Rahm, G. Heyer,
MehrRechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir?
Rechnernetze Übung 5 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2012 Wo sind wir? Quelle Nachricht Senke Sender Signal Übertragungsmedium Empfänger Quelle Nachricht Senke Primäres
MehrVerkettete Datenstrukturen: Bäume
Verkettete Datenstrukturen: Bäume 1 Graphen Gerichteter Graph: Menge von Knoten (= Elementen) + Menge von Kanten. Kante: Verbindung zwischen zwei Knoten k 1 k 2 = Paar von Knoten (k 1, k 2 ). Menge aller
MehrKompakte Graphmodelle handgezeichneter Bilder. Einbeziehung in Autentizierung und Bilderkennung
Kompakte Graphmodelle handgezeichneter Bilder Einbeziehung in Autentizierung und Bilderkennung Inhaltsverzeichnis 1 Einleitung Das graphische Model.1 Image Thinning................................. 3.
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,...
Mehr10%, 7,57 kb 20%, 5,3 kb 30%, 4,33 kb 40%, 3,71 kb 50%, 3,34 kb. 60%, 2,97 kb 70%, 2,59 kb 80%, 2,15 kb 90%, 1,62 kb 99%, 1,09 kb
Die Komprimierung: Die Abkürzung JPG (oder auch JPEG) steht für "Joint Photographic Experts Group". Dieses Bildformat ist nach der Expertengruppe, die es erfunden hat, benannt. Die Komprimierung empfiehlt
MehrFachseminar WS 2008/09
Fachseminar WS 2008/09 Fachgebiet: Compilerbau Thema: Lexikalische Analyse (Scanner) Referent: Ali Sediq Betreuer: Prof. Dr. Helmut Weber 1 Inhaltsverzeichnis Lexikalische Analyse 1.0 Grundprobleme der
MehrSicherheit von PDF-Dateien
Sicherheit von PDF-Dateien 1 Berechtigungen/Nutzungsbeschränkungen zum Drucken Kopieren und Ändern von Inhalt bzw. des Dokumentes Auswählen von Text/Grafik Hinzufügen/Ändern von Anmerkungen und Formularfeldern
Mehrn ϕ n
1 3. Teiler und teilerfremde Zahlen Euler (1707-1783, Gymnasium und Universität in Basel, Professor für Physik und Mathematik in Petersburg und Berlin) war nicht nur einer der produktivsten Mathematiker
MehrDigitale Bildverarbeitung (DBV)
Digitale Bildverarbeitung (DBV) Prof. Dr. Ing. Heinz Jürgen Przybilla Labor für Photogrammetrie Email: heinz juergen.przybilla@hs bochum.de Tel. 0234 32 10517 Sprechstunde: Montags 13 14 Uhr und nach Vereinbarung
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
MehrSortierverfahren 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
MehrKapitel 8: Abstrakte Datentypen. Inhalt. Definition ADT Keller ADT Schlange
Wintersemester 005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl
MehrEinführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)
Wintersemester 2005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl
MehrLernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.
6. Bäume Lernziele 6. Bäume Lernziele: Definition und Eigenschaften binärer Bäume kennen, Traversierungsalgorithmen für binäre Bäume implementieren können, die Bedeutung von Suchbäumen für die effiziente
MehrQuellencodierung NTM, 2006/05, 9.3 Quellencodierung, Rur, 1
Quellencodierung NTM, 2006/05, 9.3 Quellencodierung, Rur, 1 Referenzen [1] Proakis, Salehi, Grundlagen der Kommunikationstechnik, Pearson, 2004. [2] D. Salomon, Data Compression, Springer, 2004. [3] D.
MehrPräfx Trie zur Stringverarbeitung. Cheng Ying Sabine Laubichler Vasker Pokhrel
Präfx Trie zur Stringverarbeitung Cheng Ying Sabine Laubichler Vasker Pokhrel Übersicht: Einführung Eigenschaften von Tries Verwendung von Tries Allgemeine Defnition von Patricia Tries Eigenschaften von
Mehr2. Digitale Codierung und Übertragung
2. Digitale Codierung und Übertragung 2.1 Informationstheoretische Grundlagen 2.2 Verlustfreie universelle Kompression 2.3 Digitalisierung, Digitale Medien Weiterführende Literatur zum Thema Informationstheorie:
Mehr