Знаючи частоти кожного символу, чи можна визначити максимальну висоту дерева, не застосовуючи алгоритм Хаффмана? Чи є формула, яка дає цьому дереву висоту?
Знаючи частоти кожного символу, чи можна визначити максимальну висоту дерева, не застосовуючи алгоритм Хаффмана? Чи є формула, яка дає цьому дереву висоту?
Відповіді:
Кодування Хаффмана (асимптотично) потрапляє в межах одного біта ентропії послідовності. Це означає, що якщо обчислити ентропію частот символів, ви будете (асимптотично) знаходитися в межах одного біта середньої довжини (тобто висоти) вашого коду. Ви можете використовувати це середнє значення для обмеження найдовшої довжини (в середньому), або ви можете використовувати комбінаторні методи, щоб отримати детермінітичні межі.
Патологічний випадок був би тоді, коли сортована частота символів нагадує послідовність Фібоначчі. N: = # символів. для N> 2, максимально можлива висота: N-1. для N == 1 або 2: 1