diff --git a/408/《数据结构》综合应用题.md b/408/《数据结构》综合应用题.md index a635fec..085a370 100644 --- a/408/《数据结构》综合应用题.md +++ b/408/《数据结构》综合应用题.md @@ -109,4 +109,19 @@ int Ans(int a[], int la, int b[], int lb, int c[], int lc){ ``` 时间复杂度:$O(n)$ -空间复杂度:$O(1)$ \ No newline at end of file +空间复杂度:$O(1)$ + +--- + +## [2020 - 42] + +若任一个字符的编码都不是其他字符编码的前缀,则称这种编码具有前缀特性。现有某字符集(字符个数 >= 2)的不等长编码,每个字符的编码均为二进制的 0、1 序列,最长为 $L$ 位,且具有前缀特性。请回答下列问题: + +1. 那种数据结构适宜保存上述具有前缀特性的不等长编码? +2. 基于你所设计的数据结构,简述从 0/1 串到字符串的译码过程。 +3. 简述判定某字符集的不等长编码是否具有前缀特性的过程。 + +--- + +1. 使用一棵二叉树保存字符集中各字符的编码,每个编码对应于从根开始到达某叶结点的一条路径,路径长度等于编码位数,路径到达的叶结点中保存该编码对应的字符。 +2. 从左至右依次扫描 \ No newline at end of file