0

我正在使用 DAWG(有向无环字图)编写文件压缩项目。程序必须执行两个操作:

  1. 读取所有文件并压缩它们
  2. 解压所有文件

(您不能以任何方式更改存档)

我的程序读取文件并将它们分成块(1 个块 = 8 个字节)。之后,将每个块插入 DAWG。主要问题是解压缩文件。为此,您需要遍历所有块(首先通过 DAWG 并收集第一个块,然后是第二个块,等等)

我想出的只是在每个顶点中存储v一个数组Node* d[NUMBER_OF_BLOCKS],其中d[b]是指向块编号的下一个顶点的指针b。但是这种方法会占用大量内存(>1 MB 每个顶点,如果有很多块),因此没有压缩。是否可以在不占用大量内存的情况下存储压缩文件并解压缩所有文件?

4

0 回答 0