我想知道它是否与霍夫曼树的方向很重要。就好像问题是为A B C D E构建一个霍夫曼树,并为每个人提供一个数字。
如果我从顶部开始然后在子节点等方面下到底部是否重要,只要我标记我的分支?
如果我离开是1而右是0而不是?那还好吗?
因为我的老师和许多youtube示例以不同的方式解释它并以不同的方式绘制它,因此同样的问题会有不同的霍夫曼代码字,具体取决于方向以及它们如何标记它。
答案 0 :(得分:0)
你的问题不明确,但我认为你已经要求将这些代码的构造作为一系列来自霍夫曼树的0和1来。
如果你问你是否必须从树的顶部开始生成比特,那么是的,否则它不会是前缀代码,即唯一可解码的。
如果您询问是否可以随机选择将0放在左侧或右侧分支上,则是,同一棵树有许多代码,它们都是最佳的,它们都是唯一可解码的前缀代码。
为了传输效率,可以选择分配发送器和接收器可以同意的0和1,以避免必须在流中包含该信息。查看Canonical Huffman Code。