微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DEFLATE 算法的内存使用情况

如何解决DEFLATE 算法的内存使用情况

DEFLATE 算法的许多实现允许基于流的输入。一个例子是 Java 的 // Between 10:00:00 and 11:59:59 db.collection.aggregate([ { $set: { parts: { $datetoParts: { date: "$delivery_slot_date" } } } },{ $match: { "parts.hour": { $gte: 10,$lt: 12 } } },]) // Between 10:10:00 and 10:29:59 db.collection.aggregate([ { $set: { parts: { $datetoParts: { date: "$delivery_slot_date" } } } },{ $match: { "parts.hour": 10,"parts.minute": { $gte: 10,$lt: 30 } } } ]) 。据我所知,DEFLATE 在压缩之前构建了一个霍夫曼树,并在 .zip 文件的开始处写入这棵树。

然而,为了构建霍夫曼树,程序需要最常出现的字符的计数,只有在读取文件后才能获得。如果流太大以至于无法一次放入内存,那么如何构建霍夫曼树?

解决方法

DEFLATE 以块为单位压缩数据。每个块都包含自己的树/计数,未压缩通常约为 16KB。

格式在RFC 1951

中指定

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。