Алгоритм Хаффмана: як студент MIT знайшов спосіб стиснення, який працює 75 років


У 1951 році аспірант Массачусетського технологічного інституту (MIT) Девід Хаффман отримав задачу, над якою раніше безрезультатно працювали навіть Клод Шеннон і його викладач Роберт Фано. Йому потрібно було знайти найефективніший спосіб двійкового кодування зі змінною довжиною коду, що враховує частоту появи кожного символу.
Протягом кількох місяців Хаффман пробував один підхід за іншим, але рішення не знаходилося. Зрештою він уже збирався викинути свої нотатки й готуватися до випускного іспиту, коли його раптово вразила ідея.
Замість того щоб будувати дерево кодування згори вниз, він вирішив іти зворотним шляхом: почати з нижнього рівня й послідовно об’єднувати два символи з найменшою частотою появи.
Так з’явився алгоритм Хаффмана, який дає мінімальну середню довжину кодового слова серед усіх двійкових префіксних кодів за заданих частот символів.
Минуло 75 років, але цей алгоритм і досі застосовується у форматах ZIP, GZIP, JPEG і MP3.
Чому це важливо
АналітикаАлгоритм Хаффмана став класичним прикладом того, як зміна напрямку мислення може розв’язати задачу, що роками залишалася відкритою. Він показує, що простий і елегантний принцип стиснення може залишатися актуальним десятиліттями.
Обговорити новину у спільноті
Діліться своїм досвідом та думками з ШІ-розробниками
Пов'язані матеріали екосистеми
Практичні гайди, термінологія та агентські скіли
Monte Carlo Tree Search for Agents (MCTS)
Алгоритмічний підхід до планування дій ШІ-агентів, що поєднує евристичний пошук, оцінку проміжних станів та бектрекінг для знаходження оптимальних рішень у просторі високої складності.
Тест Тюрінга та чому він застарів (Turing Test)
Історичний тест штучного інтелекту, запропонований Аланом Тюрінгом у 1950 році. Перевіряє здатність машини вести текстовий діалог настільки правдоподібно, щоб людина не відрізнила її від іншої живої людини. Пояснює, чому з появою мовних моделей цей тест втратив наукову актуальність.
Який формат AI-відео обрати: огляд 7 напрямків на YouTube у 2026 році
1. Чому AI-відео захопило YouTube: масштаб і контекст...
Claude Fable 5: коли використовувати потужну модель і який рівень effort обрати
Повний розбір моделі Claude Fable 5 та параметру effort: як працює поведінковий сигнал міркування, матриця доступності рівнів (low/xhigh), розрахунок вартості за хід та налаштування в API і Claude Code.
У відкритому коді знайшли спосіб майже вдвічі збільшити обчислювальну потужність RTX 3090
Відкритий проєкт gpu-unlock обходить програмне обмеження Nvidia для тензорних ядер GeForce 30-ї серії, майже подвоює пропускну здатність FP16/BF16 і прискорює префіл LLM без патчингу драйвера.
Super Mario 64 запустили у змішаній реальності на 90 к/с
Розробники запустили Super Mario 64 у змішаній реальності на 90 к/с, використовуючи Claude Opus 5.5 і PICO CLI.