⑼设有一棵树,如图6-28所示。
①请分别用双亲表示法、孩子表示法、孩子兄弟表示法给出该树的存储结构。 ②请给出该树的先序遍历序列和后序遍历序列。 ③请将这棵树转换成二叉树。 答:①双亲表示法:
孩子表示法:
13
孩子兄弟表示法:
②先序:abdechkgmfn 后序:debhkgcfnma ③
14
⑽设给定权值集合w={3,5,7,8,11,12} ,请构造关于w的一棵huffman树,并求其加权路径长度WPL 。 答:huffman树:
WPL = 3*3+5*3+7*3+8*3+11*2+12*2 =115
⑾假设用于通信的电文是由字符集{a, b, c, d, e, f, g, h}中的字符构成,这8个字符在电文中出现的概率分别为{0.07, 0.19, 0.02, 0.06, 0.32, 0.03, 0.21, 0.10} 。
①请画出对应的huffman树(按左子树根结点的权小于等于右子树根结点的权的次序构造)。
15
②求出每个字符的huffman编码。 答:①
②
Huffman编码:
a:0010 b:10 c:00000 d:0001 e:01 f:00001 g:11 h:0011
3、求两个n阶方阵相加C=A+B的算法如下,分析其时间复杂度。 #define MAX 20 /*定义最大的方阶*/
void MatrixAdd(int n,int A[MAX][MAX],int B[MAX][MAX],int C[MAX][MAX]) { inti,j;
for (i=0;i for (j=0;j C[i][j]=A[i][j]+B[i][j]; } 16

