恩 不会 头痛啊
13. 给定若干个字符的出现频率,构造一个哈夫曼(Huffman)树。此哈夫曼树还需要满足以下两个条件:A. 相同父节点的左子树权值小于或等于右子树权值。
B. 相同父节点的左右子树权值相等时,则左子树的叶子节点中字符在给定字符集中出现最早的字符排在右子树中字符在给定字符集中出现最早的字符的前面。比如左子树最早字符为A,右子树最早字符是B,给定字符集为ABCDE,则满足此条件。
输出这个字符集的哈夫曼编码
数据输入:
第一行是一个整数N(1<=N<=26),表示字符集的大小。空一格,有一个N个字符的字符串表示字符集中的字符。第二行是N个正整数,每个正整数处于[1,100]之间,表示对应字符的权重。
数据输出:
每行输出一个字符的哈夫曼编码,用0,1串表示,左子树用0,右子树用1。每行先输出对应字符,空一格,输出对应的哈夫曼编码。
示例:
输入文件名:input18.txt
5 ABCDE
3 3 5 8 6
输出:(标准输出)
A 010
B 011
C 00
D 11
E 10
14. 给出一个无向图,求出此图是否连通
数据输入:
第一行是一个整数N(1<=N<=20),表示有多少个图需要计算。以下每个图的第一行是整数M,表示此图有多少个顶点,以后的M行表示图的连接情况。表示连接情况的每行中首先是一个整数K,表示有此顶点有多少条边,接着有K个整数,表示此顶点和其他K个顶点相连。
数据输出:
图连通输出Yes,否则输出No
示例:
输入文件名:input20.txt
2
3
2 2 3
1 1
1 1
4
1 2
1 1
1 4
1 3
输出:(标准输出)
Yes
No
小女子先谢过了啊(*^__^*)