BWT算法将原来的文本转换为一个相似的文本,转换后使得相同的字符位置连续或者相邻,之后可以使用其他技术如:Move-to-fronttransform 和 游程编码 进行文本压缩。
BWT原理:
1. BWT编码
①对需要转换的字符串后加“$”符号($作为标识符,保证n个循环移位后的字符串均布相同),进行循环右移,每次循环一位,记录下每次右移后的结果。
②对循环移位后得到的n个字符串按照字典序排序。
③记录下排序后得到的每个字符串的最后一个字符(得到
BWT算法通过循环右移和字典序排序,使相同字符相邻,便于后续的文本压缩。解码过程利用字符相对位置恢复原字符串。本文介绍了BWT原理,并提供了Java实现。
BWT算法将原来的文本转换为一个相似的文本,转换后使得相同的字符位置连续或者相邻,之后可以使用其他技术如:Move-to-fronttransform 和 游程编码 进行文本压缩。
BWT原理:
1. BWT编码
①对需要转换的字符串后加“$”符号($作为标识符,保证n个循环移位后的字符串均布相同),进行循环右移,每次循环一位,记录下每次右移后的结果。
②对循环移位后得到的n个字符串按照字典序排序。
③记录下排序后得到的每个字符串的最后一个字符(得到
2209
673
331
2115

被折叠的 条评论
为什么被折叠?
