参考书《数据压缩导论(第4版)》 Page 121 7,8
解:C(a)=1,C(b)=2,C(r)=3,C(t)=4,所以解码过程如下:
序列 | 输出字符 |
<0,0,3> | r |
<0,0,1> | ra |
<0,0,4> | rat |
<2,8,2> | ratatatat_ (“_”表示空格) |
<3,1,2> | ratatatat_a_ |
<0,0,3> | ratatatat_a_r |
<6,4,4> | ratatatat_a_rat_at |
<9,5,4> | ratatatat_a_rat_at_a_rat |
编码:由上可知,序列为ratatatat_a_rat_at_a_rat
W=20,S=10
|ratatatat_|a_rat_at_a_rat
对r没有匹配字符
发送:<0,0,3>
r|atatatat_a|_rat_at_a_rat
对a没有匹配字符
发送:<0,0,1>
ra|tatatat_a_|rat_at_a_rat
对t没有匹配字符
发送:<0,0,4>
rat|atatat_a_r|at_at_a_rat
发送:<2,8,2>
|ratatatat_|a_rat_at_a_rat
发送:<3,1,2>
ra|tatatat_a_|rat_at_a_rat
发送:<0,0,3>
rat|atatat_a_r|at_at_a_rat
发送:<6,4,4>
ratatata|t_a_rat_at|_a_rat
发送:<9,5,4>
解:
由于接收序列为:4,5,3,1,2,8,2,7,9,7,4;
所以:
输入4 时,解码序列为T。
输入5 时,解码序列为TH。
输入3 时,解码序列为THI。
输入1 时,解码序列为THIS。
输入2 时,解码序列为THIS_ 。
由上面解码得到的序列可得:
索引 | 项 |
6 | TH |
7 | HI |
8 | IS |
9 | S_(“_”为空格) |
所以,由此可得:
输入8 时,解码序列为THIS_IS 。
输入2 时,解码序列为THIS_IS_ 。
输入7 时,解码序列为THIS_IS_HI 。
输入9 时,解码序列为THIS_IS_HIS_ 。
输入7 时,解码序列为THIS_IS_HIS_HI 。
输入4 时,解码序列为THIS_IS_HIS_HIT 。
所以解码序列为:THIS_IS_HIS_HIT。
所以字典为:
索引 | 项 |
1 | S |
2 | _ (“_”为空格) |
3 | I |
4 | T |
5 | H |
6 | TH |
7 | HI |
8 | IS |
9 | S_ |
10 | _I |
11 | IS_ |
12 | _S |
13 | HIS |
14 | S_H |
15 | HIT |