第四次作业
参考书《数据压缩导论(第4版)》 Page 121 7,8
7、使用LZ77算法对一个序列进行编码。给定C(a)=1,C(b)=2,C(r)=3,C(t)=5,对以下三组序列进行解码:
<0,0,3><0,0,1><0,0,4><2,8,2><3,1,2><0,0,3><6,4,4><9,5,4>
假定窗口的大小为20,先进性缓冲区的大小为10.对解码所得到的序列进行解码,确保得到相同的三元组序列。
解码,得
| 输入 | 输出 |
| <0,0,3> | r |
| <0,0,1> | ra |
| <0,0,4> | rat |
| <2,8,2> | ratatatatatb |
| <3,1,2> | ratatatatatbab |
| <0,0,3> | ratatatatatbabr |
| <6,4,4> | ratatatatatbabratbat |
| <9,5,4> | ratatatatatbabratbatbabrat |
再继续编码,得
| 输入 | 输出 |
| ||ratatatatatbabratbatbabrat | <0,0,3> |
| |r|atatatatatbabratbatbabrat | <0,0,1> |
| |ra|tatatatatbabratbatbabrat | <0,0,4> |
| |rat|atatatatbabratbatbabrat | <2,8,2> |
| ra|tatatatatb|abratbatbabrat | <3,1,2> |
| rata|tatatatbab|ratbatbabrat | <0,0,3> |
| ratat|atatatbabr|atbatbabrat | <6,4,4> |
| ratatatata|tbabratbat|babrat | <9,5,4> |
由结果,得:编码输出的三元组与解码输入的三元组完全一样。
8、给定以下初始词典和接收序列,构建一个LZW词典,并对所发送的序列进行解码。
接收序列:4,5,3,1,2,8,2,7,9,7,4
初始词典:
| 索引 | 项 |
| 1 | S |
| 2 | b |
| 3 | I |
| 4 | T |
| 5 | H |
由接收序列:4,5,3,1,2,8,2,7,9,7,4
依次得到的输出的项:
| 输入 | 输出 |
| 4 | T |
| 5 | H |
| 3 | I |
| 1 | S |
| 2 | B |
| 8 | IS |
| 2 | B |
| 7 | HI |
| 9 | SB |
| 7 | HI |
| 4 | T |
解码得出的序列:THISBISBHISBHIT
字典为:
| 索引 | 项 |
| 1 | S |
| 2 | B |
| 3 | I |
| 4 | T |
| 5 | H |
| 6 | TH |
| 7 | HI |
| 8 | IS |
| 9 | SB |
| 10 | BI |
| 11 | ISB |
| 12 | BS |
| 13 | HIS |
| 14 | SBH |
| 15 | HIT |
浙公网安备 33010602011771号