Любительница поэзии и программист Джулия Эванс написала красивую программку gzip.jl, которая показывает, как gzip осуществляет декомпрессию текста, сжатого с помощью алгоритма LZ77.
(лучше смотреть без звука)
LZ77 использует словарный подход и кодирует совпадения текста. При повторном упоминании одинакового фрагмента алгоритм использует код предыдущего упоминания (красным цветом).
Поэзия идеально подходит для архивирования, потому что она основана на повторениях — ритм, рифма, повторение фраз для усиления эффекта. В этом примере видно, что количество красного (повторного) текста увеличивается с каждой строкой. Наверное, это одна из самых красивых визуальных демонстраций работы архиватора. Программу можно использовать в учебных курсах как наглядное пособие.
Автор: alizar