Move-to-front transform

✍ dations ◷ 2025-07-01 12:38:45 #算法

MTF(Move-To-Front)是一种数据编码方式,作为一个额外的步骤,用于提高数据压缩技术效果。MTF主要使用的是数据“空间局部性”,也就是最近出现过的字符很可能在接下来的文本附近再次出现。

(1)首先维护一个文本字符集大小的栈表,“recently used symbols”(最近访问过的字符),其中每个不同的字符在其中占一个位置,位置从0开始编号。(2)扫描需要重新编码的文本数据,对于每个扫描到的字符,使用该字符在“recently used symbols”中的index替换,并将该字符提到“recently used symbols”的栈顶的位置(index为0的位置)。重复上一步骤,直到文本扫描结束。

以字符串“annbaa”为例(“annbaa”在这里为字符串“banana”经过BWT变换后的结果Bzip2 Burrows-Wheeler变换)。基于recently used symbols,设立一个栈表“abcdefghijklmnopqrstuvwxyz”。

a n n b a a
a n n b a a
a n n b a a
a n n b a a
a n n b a a
a n n b a a
结果
0
0,13
0,13,0
0,13,0,2
0,13,0,2,2
0,13,0,2,2,0
0,13,0,2,2,0
abcdefghijklmnopqrstuvwxyz
nabcdefghijklmopqrstuvwxyz
nabcdefghijklmopqrstuvwxyz
bnacdefghijklmopqrstuvwxyz
abncdefghijklmopqrstuvwxyz
abncdefghijklmopqrstuvwxyz
abncdefghijklmopqrstuvwxyz
Index of a = 0; record 0; a is on the top
Index of n = 13; record 13; move n to the top
Index of n = 0; record 0; n is on the top
Index of b = 2; record 2; move b to the top
Index of a = 2; record 2; move a to the top
Index of a = 0; record 0; a is on the top

MTF的压还原过程

以序列“0, 13, 0, 2, 2, 0”为例(“0, 13, 0, 2, 2, 0”在这里为字符串“aaabnn”经过MVT压缩后的结果)。基于栈表“nbacdefghijklmopqrstuvwxyz”,n的指数为0,z的指数为25。

相关

  • 万国宫万国宫(法语:Palais des Nations;英语:Palace of Nations),位于瑞士日内瓦,建于1929年并于1938年设定为国际联盟总部。虽然瑞士直到2002年才加入联合国,但从1950年代开始,万国宫就作
  • 高压氧高压氧治疗,或简称高压氧,英文:Hyperbaric oxygen therapy (HBOT) ,乃医学上利用高压的氧气来提供治疗的方式。高压氧治疗利用了几个原理:高压氧最主要的治疗适应症包括:以上除一
  • 肌萎性侧索硬化症肌萎缩性脊髓侧索硬化症(英语:Amyotrophic lateral sclerosis,缩写为 ALS),也称为肌萎缩侧索硬化症,有时也称为卢·贾里格症(英语:Lou Gehrig's disease)、渐冻人症、运动神经元病,是
  • 约瑟夫·布拉克约瑟夫·布拉克(Joseph Black, 1728年4月16日-1799年12月6日)是英国籍的医生和化学家。他重新发现二氧化碳、比热及解说潜热的概念。他也是格拉斯哥大学的医学教授(同时担任化学
  • 圣瓦西里主教座堂圣瓦西里主教座堂(俄语:Собор Василия Блаженного,全称 Собор Покрова пресвятой Богородицы, что на Рву,意指
  • 肿瘤坏死因子α1A8M, 1TNF, 2AZ5, 2E7A, 2TUN, 2ZJC, 2ZPX, 3ALQ, 3IT8, 3L9J, 4TSV, 5TSW· cytokine activity · tumor necrosis factor receptor binding · protein binding · id
  • 反应级数反应级数,为化学反应速率方程中,反应物浓度的指数总和。考虑一个假想的反应:其反应速率(rate)为R,与代表反应物A跟B的浓度,k为速率常数(rate constant),则假设其速率方程可写成如
  • 核足球核橄榄球(英语:Nuclear football)是一种特殊的通信工具,外表是个黑色手提皮包,内藏的工具允许美国总统即使在远离指挥中心(如白宫战情室)的情况下亦能授权发动核攻击。作为美国战略
  • 盲断层盲断层是指没有破裂到地表,因此从地表看来没有任何异状的断层类型,大部分在地图上也没有绘制出该盲断层的实际位置,只有当发生突如其来的地震时才可能被人们所发现。由于盲断层
  • 丁宝铨丁宝铨(1866年-1919年),字衡甫、号默存、谥恪敏,江苏省淮安府山阳县(今江苏省淮安县)人,清末民初政治人物,光绪年间进士出身。光绪十四年(1889年)中举人,次年联捷进士,在吏部文选司行走。