【问题标题】:Huffman code: shortest and longest code for Fibonacci frequencies霍夫曼代码:斐波那契频率的最短和最长代码
【发布时间】:2023-03-30 21:25:02
【问题描述】:

对于具有斐波那契频率的 n 个字符,最短代码和最长霍夫曼代码的长度是多少?

据我了解-如果我们构建一棵树,它将看起来像一个分支,每个长度为 1 的节点从根部到最低的叶子都悬垂着。当我们从 n-2 个数字中创建第一个节点时,该节点的频率将为 F[n]-1,并且 F[n]>F[n]-1>F[n-1]。 (F[n-1] 是剩余最少的,F[n] 将是第二少的),通过归纳,这将适用于所有频率。

我们创建的树显然是一棵不平衡的树,我认为它不好。

如果这是创建树的最佳方式,那么最长的创建方式的长度是多少?如果不是最优路径,那么最短路径的长度是多少?

我是计算机科学的新手,非常感谢一个好的解释。

【问题讨论】:

标签: algorithm huffman-code


【解决方案1】:

最短的代码长度为 1,最长的代码长度为 n-1。会有两个长度为 n-1 的符号,而 1..n-2 中的每个长度都有一个符号。

只有一棵最优树,仅此而已。不平衡并没有什么不好。事实上,必须以这种方式使用最少的位数来编码具有这些频率的符号。

我不知道您所说的“最短”或“最长”方式是什么意思。

【讨论】:

    猜你喜欢
    • 2013-11-21
    • 2015-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    相关资源
    最近更新 更多