请将答案发到我的邮箱里zyg314126@yahoo.com.cn
我将对最满意的追加200分,截至18号中午12点
以下是题目:
假设用于通信的电文由字符集{a,b,c,d,e,f,g}中的字母构成,这8个字母在电文中出现的概率分别为{0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10}
(1)设计该8个字母的哈夫曼编码(要求写明求解过程)
(2)计算对应哈夫曼树的WPL值(要求写明求解过程)
已知一组关键字为(16,02,20,14,55,21,83,24,61,17,118,756),若按哈希函数H(key)=keyMOD13和链地址法处理冲突,写出构造的哈希表。
针对关键字序列(751,222,57,129,97,86,42,94,076,48),要求:(1)写出执行链式基数排序的过程(排列顺序从小到大)(2)写出快速排序过程(3)将该序列建立一个大顶堆
參考答案:(1)
0.90
0.37 0.53
0.18 0.19b 0.21g 0.32e
0.07a 0.11
0.05 0.06d
0.02c 0.03f
wpl=(c+f)*5+d*4+a*3+(b+f+e)*2=2.14
(2)
0
1->118->14
2->756->27
3->55->16
4->17
5->83
6->^
7->20
8->21
9->61
10->^
11->24
12->^
(3)
1. 751 222 57 129 97 86 42 94 076 48
e[0] e[1] e[2] e[3] e[4] e[5] e[6] e[7] e[8] e[9]
751 42 94 076 97 48 129
222 086 57
f[0] f[1] f[2] f[3] f[4] f[5] f[6] f[7] f[8] f[9](对头)
751 222 42 94 086 076 57 97 48 129
(上面是对个位)
同理对十位排序:
129 48 57 97
222 42 751 076 86 94
222 129 42 48 751 076 86 94 97
百位:
097
094
086
076
057
048
042 129 222 751
(百位:)
42 48 57 76 86 94 97 129 222 751
2.快速排序 (以第一个数为主)
751 222 57 129 97 86 42 94 076 48
第一次:(751找正确位置)
48 222 57 129 97 86 42 94 076 751
第二次:(222找正确位置)
48 57 129 97 86 42 94 76 222 751
第三次:(48)
42 48 129 97 86 57 94 76 222 751
第五次:129
42 48 76 57 86 94 97 129 222 751
第六次:76
42 48 57 76 86 94 97 129 222 751
3.(按照1.2.3.....写成二叉树)
751
222 57
129 97 80 42
94 76 48
排一下就ok:
751
222 80
129 97 57 42
94 76 48