软件开发技术基础第2版课件作者赵英良第2章节数据结构及其应用2_非线性结构.pptVIP

  • 7
  • 0
  • 约5.64千字
  • 约 45页
  • 2018-05-08 发布于广东
  • 举报

软件开发技术基础第2版课件作者赵英良第2章节数据结构及其应用2_非线性结构.ppt

* * * * * * * * * * * * * * * * * * * * * * * 2.广度优先搜索 */61 2.3.7 树和图的应用 举例 霍夫曼编码 最小生成树 */61 哈夫曼树和哈夫曼编码 设计二进制编码方案时要考虑不同字符的使用频率,使用频率高的字符编码应当尽量短一些。但是仅仅考虑使用频率也是不够的。 例如:某个文件由A、B、C、D四个字符组成,其中A用得最多,C次之。 方案1: A — 1 C — 0 B — 10 D — 11 那么象1100这样的二进制数据具有二义性,既代表AACC,又可代表ABC,还可代表DCC。 为了不使二进制编码具有二义性,每个字符编码都不能与其他字符编码的前面若干位重合。 */61 假设二叉树中的左分支代表0,右分支代表1,则不论字符是采用何种0、1组合形式构成的编码,它必然对应二叉树中的某一个结点。 */61 B D C A 0 0 1 1 A B 0 1 D C 0 0 1 1 (a)有二义性的编码系统对应的二叉树 (b)无二义性的编码系统对应的二叉树 任何一个无二义性的二进制字符编码系统必然与这样一颗二叉树对应,该二叉树的叶子结点对应着所有需要转换的字符,并且按照左分支代表0、右分支代表1的规则,从根到该叶子的分支对应的0、1序列就构成叶子对应字符的二进制编码。 二叉树带权

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档