2020 年 408 真题2020 年 408 数据结构 · 第 42 题选中文字高亮 · 下划线任一个字符的编码都不是其它字符编码的前缀,则称这种编码具有前缀特性。现有某字符集(字符个数≥2)的不等长编码,每个字符的编码均为二进制的 0、1 序列,最长为 L 位,且具有前缀特性。请回答下列问题: ⑴ 哪种数据结构适宜保存上述具有前缀特性的不等长编码? ⑵ 基于你所设计的数据结构,简述从 0/1 串到字符串的译码过程。 ⑶ 简述判定某字符集的不等长编码是否具有前缀特性的过程。←上一题定义三元组 (a,b,c) ( a,b,c 均为正数)的距离 D=∣a−b∣+∣b−c∣+∣c−a∣ 。给定 3 个非空整数集合 S1,S2,S3 ,按升序分别存储在 3 个数组中。请设计一个尽可能高效的算法,计算并输出所有可能的三元组 (a,b,c) ( a∈S1,b∈S2,c∈S3 )中的最小距离。例如 S1={−1,0,9},S2={−25,−10,10,11},S3={2,9,17,30,41} 。则最小距离为 2 ,相应的三元组为 (9,10,9) 。 要求: (1)给出算法的基本设计思想; (2)根据设计思想,采用 C 或 C++ 语言描述算法,关键之处给出注释; (3)说明你所设计算法的时间复杂度和空间复杂度下一题设 n 是描述问题规模的非负整数,下列程序段的时间复杂度是( )。 x = 0; while (n >= (x + 1) * (x + 1)) x = x + 1;→