题目信息

题目类型
练习
题目年份
2025
题目题型
编程题
关 键 词
对二进制字符串解码

题目题干

请编写程序,根据给定的字符和权重值序列,构建哈夫曼树,并将输入的二进制字符串解码输出。nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
注意:因为哈夫曼编码是不唯一的,所以如果不严格按照指定方法生成哈夫曼树,则有可能无法正确解码。本题规定的哈夫曼树构建限制为:nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

  • 哈夫曼森林的所有根结点存为线性表,新的树根必须插入表头;
  • 每次取出权值最小的根结点时,若有并列,取最靠近表头的那个;
  • 对于每轮取出的两个根结点,第一个取出的为左子树,第二个取出的为右子树;
  • 二进制字符 0 对应树中的左分支;1 对应右分支。

输入格式:

输入首先给出一个正整数 n(1<n≤20),随后 n 行,每行给出一个字符及其权重值,其间以空格分隔。其中字符为小写英文字母,权重值都是不超过 100 的正整数。最后一行给出一个由 01 组成的二进制字符串,长度不超过 1000,以回车结束。题目保证这个字符串有唯一解码。nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输出格式:

在一行中输出解码后的字符串。nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入样例:

5
a 4
b 3
c 2
w 1
z 1
100001110101101101100111

输出样例:

baaacabwbzc

样例说明:

按照本题构建哈夫曼树的规定,生成的哈夫曼编码如下:nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
a 0nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
b 10nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
c 111nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
z 1100nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
w 1101nCP100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

答案解析

相关题目

请编写程序,根据给定信息构建森林,并找出给定结点所在树的根结点。 输入格式: 输入首先给出一个正整数 n(0<n≤20),随后 n 行,第 i 行(0≤i<n)对应数组第 i 个元素对应
请编写程序,根据给定的字符和权重值序列,构建哈夫曼树,并将输入的二进制字符串解码输出。 注意:因为哈夫曼编码是不唯一的,所以如果不严格按照指定方法生成哈夫曼树,则有可能无法正确解码。本题规定的哈夫曼树
请编写程序,根据给定的权重值序列,构建哈夫曼树,并计算带权路径长度。 输入格式: 输入首先给出一个不超 20 的正整数 n,随后一行给出 n 个权重值。其中权重值都是不超过 100 的正整数。 输
请编写程序,根据给定二叉树的层序序列化结果,重构二叉树,并输出其层序遍历结果。 输入格式: 输入首先给出一个不超 20 的正整数 n,随后一行给出 n 个层序序列的元素。其中键值都是不超过 9 位的
请编写程序,创建一棵有 3 个结点的二叉树,并输出其层序序列化结果。 输入格式: 输入给出 3 个整数,依次为二叉树根结点的左孩子、右孩子、根结点本身存储的键值。 输出格式: 输出二叉树的层序序列
请编写程序,根据给定二叉树的前序序列化结果,重构二叉树,并输出其前序遍历结果。 输入格式: 输入首先给出一个不超过 20 的正整数 n,随后一行给出 n 个前序序列的元素。其中键值都是不超过 9 位
请编写程序,创建一棵有 3 个结点的二叉树,并输出其前序序列化结果。 输入格式: 输入给出 3 个整数,依次为二叉树根结点的左孩子、右孩子、根结点本身存储的键值。 输出格式: 输出二叉树的前序序列
请编写程序,创建一棵有 3 个结点的二叉树,并输出其层序遍历序列。 输入格式: 输入给出 3 个整数,依次为二叉树根结点的左孩子、右孩子、根结点本身存储的键值。 输出格式: 输出二叉树的层序遍历序
请编写程序,读入两个操作数和一个操作符,建立表达式树,输出中缀表达式。 输入格式: 输入给出 2 个整数和一个字符,依次为表达式的第 1、2 个操作数,和操作符。 输出格式: 在一行中输出中缀表达
请编写程序,创建一棵有 3 个结点的二叉树,并输出其高度。 输入格式: 输入给出 3 个整数,依次为二叉树根结点的左孩子、右孩子、根结点本身存储的键值。 输出格式: 输出二叉树的高度。 输入样例

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢