MakarovSuites
Deutsch
EnglishDeutschРусскийУкраїнськаFrançaisEspañolItalianoPolski
Kontakt & Lizenzen

Math

Huffman-Code

Eine sortierte Häufigkeitswarteschlange wird zum Präfixcodebaum. Ein Symbol auswählen, seine Bits verfolgen und Verbindungen schrittweise prüfen.

Huffman-Code — Bild aus der Anwendung
Bild aus der Anwendung

Was passiert

Jeder Schritt verbindet die zwei kleinsten Gewichte. Die Zweige 0 und 1 ergeben den Code auf dem Weg von der Wurzel zum Symbol. Die Auswahl eines Buchstabens hebt diesen Weg hervor. L ist die mittlere Codelänge, H die Entropie. Huffman minimiert L unter binären Präfixcodes einzelner Symbole, auch bei L > H. Gleichheit gilt für Wahrscheinlichkeiten 2^(-k). Die Bitzahl enthält weder Codetabelle noch Dateikopf.

Gleichungen des Moduls
Gleichungen
Aufbau: die beiden leichtesten Knoten verschmelzen, n−1 Mal; der Code eines Symbols ist sein Pfad von der Wurzel, links 0, rechts 1
L = Σ p(i)·l(i)  (Bits pro Symbol);  H = −Σ p(i)·log₂ p(i);  die Codelänge l(i) ist die Tiefe des Blatts
Kraft: Jeder Präfixcode hat Σ 2^(−l(i)) ≤ 1, und jeder solche Vektor ist ein Baum; Huffmans Baum ist voll, daher ist die Summe genau 1
H ≤ L < H + 1 immer;  L = H genau dann, wenn jedes p(i) eine Zweierpotenz ist
Die Optimalität wird gegen eine Suche über ALLE Kraft-zulässigen Längenvektoren geprüft - die Suche weiß nichts vom Algorithmus
gleiche Häufigkeiten: 2(n − 2^k) Symbole erhalten den langen Code, wobei 2^k die größte Zweierpotenz unter n ist
Fibonacci-Häufigkeiten 1, 1, 2, 3, 5, … ergeben den schiefsten Baum: Längen n−1, n−1, n−2, …, 1

Weitere Experimente

Zum Katalog
Rucksack: Gier gegen die Tabelle — Bild aus der Anwendung

Math

Rucksack: Gier gegen die Tabelle

Wähle nummerierte Kisten unter einem Gewichtslimit. Vergleiche mit Gier und der exakten Lösung, öffne eine Tabellenzelle und verfolge die optimale Auswahl rückwärts.

Simplex in der Ebene — Bild aus der Anwendung

Math

Simplex in der Ebene

Der zulässige Bereich liegt auf dem Tisch, darüber hängt eine Platte in Höhe der Zielfunktion. Die Zielfunktion ist linear, also ist die Platte flach und geneigt, und der beste Punkt ist buchstäblich ihre höchste Ecke.

Die Turingmaschine und die fleißigen Biber — Bild aus der Anwendung

Math

Die Turingmaschine und die fleißigen Biber

Ein Papierband zwischen zwei Spulen, ein Metallkopf mit Zustandslampe und eine Regeltabelle. Jeder Schritt läuft als Lesen, Schreiben, Bewegen, neuer Zustand ab; das Journal darunter hält den ganzen Lauf, und eine geänderte Regel bewahrt den alten Lauf als Geist. Die Rekorde sind durch Aufzählen aller Maschinen gefunden, nicht zitiert.