作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在研究用于对字符流进行位编码的霍夫曼代码,并了解到最佳代码将由一棵完整的二叉树表示,其中每个不同的字符由一个叶子表示,并且所有内部节点都恰好包含两个子节点。
我想知道为什么满二叉树是这里的最佳选择?换句话说,这里全二叉树的优势是什么?
最佳答案
这不是选择,而是等价。
最优霍夫曼码由有限状态机解码,其中
这相当于一个搜索树,其中
也有非最优霍夫曼代码,它们的停止状态/叶节点不包含输出符号。这样的二叉树不会完整。
关于algorithm - 哈夫曼码的全二叉树有什么优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12455043/
我是一名优秀的程序员,十分优秀!