zoukankan      html  css  js  c++  java
  • 第四次作业

    7.使用LZ77算法对一个序列进行编码。给定C(a)=1,C(p)=2,C(r)=3,C(t)=4。对一下三元组序列进行编码:

    <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。对解码所得到的序列进行编码,确保得到相同的三元组序列。

        解:由题意,先行缓冲区的大小为10,解码过程如下

                        

                 <0,0,3>                                     |r

                                                           |r|

                 <0,0,1>                                   |r|a

                                                          |ra|

                 <0,0,4>                                  |ra|t

                                                         |rat|

                 <2,8,2>                                 |rat|atatatp

                                                  |ratatatatp|

                 <3,1,2>                          |ratatatatp|ap

                                                ra|tatatatpap|

                 <0,0,3>                        ra|tatatatpap|r

                                               rat|atatatpapr|

                 <6,4,4>                       rat|atatatpapr|atpat

                                          ratatata|tbapratpat|

                 <9,5,4>                  ratatata|tbapratpat|paprat

                                    ratatatatpapra|tpatpaprat|

                   

                 所以最后解码得:ratatatatpapratpatpaprat

    下面是进行编码过程:

                序列为ratatatatpapratpatpaprat,对其进行编码

                 |ratatatatp|apratpatpaprat    <0,0,3>               

                r|atatatatba|bratbatbabrat     <0,0,1>              

               ra|tatatatbab|ratbatbabrat      <0,0,4>           

              rat|atatatbabr|atbatbabrat       <2,8,2>

                 |ratatatatb|abratbatbabrat    <3,1,2>

               ra|tatatatbab|ratbatbabrat      <0,0,3>

              rat|atatatbabr|atbatbabrat       <6,4,4>

         ratatata|tbabratbat|babrat            <9,5,4>

    8.给定一下初始词典和接收序列,构建一个LZW词典,并对所发送的序列进行解码。

    接收序列:4,5,3,1,2,8,2,7,9,7,4

             初始字典: 

            

    索引

    条目

        1

         S

        2

         P

        3

         I

        4

         T

        5

         H

                  解码如下:

    索引

    条目

    输出

    1

    S

     

    2

    _

     

    3

    I

     

    4

    T

     

    5

    H

     

    6

    TH

    4

    7

    HI

    5

    8

    IS

    3

    9

    S_

    1

    10

    _I

    2

    11

    IS_

    8

    12

    _H

    2

    13

    HIS

    7

    14

    S_H

    9

    15

    HIT

    7

     

     

    4

    所以解码后的序列为:THIS_IS_HIS_HIT

  • 相关阅读:
    一个老程序员的从零开始的从新出发
    Django静态文件配置
    Data truncated for column 'id' at row 1
    MyBatis之java.lang.UnsupportedOperationException异常解决方案
    mybatis批量查询-插入-删除
    Mybatis中进行批量更新(updateBatch)
    mybatis插入insert操作,返回自增id
    redis五大数据类型
    redis中key键操作
    Redis主从复制失败(master_link_status down)
  • 原文地址:https://www.cnblogs.com/fenghaojiao/p/4837465.html
Copyright © 2011-2022 走看看