跳至主要內容

压缩包编码问题

LincZero大约 1 分钟

压缩包编码问题

目录

压缩扩展名

哈夫曼编码(zip和jpg底层都使用到的编码方法)

最简单也是使用最广泛的一种压缩算法

核心原理:通过构造哈夫曼树得到的哈夫曼编码,将定长编码存储变为变长编码存储

树是一种非线性的数据结构,是若干节点的集合,右图就是一棵树。 节点:图中A,B,C等都是节点,不仅包含数据还包含指向其他节点的分支。A是根节点。 节点的度:节点拥有的分支个数。 叶子节点:度为0的节点。图中E,H,C,l都是叶子节点。 路径和路径长度:路径是指树中一个节点到另一个节点的分支所构成的路线,路径长度就是路径上分支的数目。A-H路径长度为3.

二叉树是节点的度≤2的树,且子树有左右之分,顺序不能颠倒。右图就是一棵二叉树。 带权路径长度:节点具有权值,从该节点到根之间的路径长度乘以节点的权值就是该节点的带权路径长度。A节点的带权路径长度=6×3=18。 树的带权路径长度(WPL) :树中所有叶子节点的带权路径长度之和。 拍的WPL=6×3+11×2+3×3=49