【发布时间】:2015-02-14 19:46:26
【问题描述】:
我的字符串只包含“U”、“D”、“L”、“R”字符(迷宫中的方向)。
字符串可能如下所示:
- RRRRDRRDDDRRUUUUDDRRRRUULLU
- DDLDDLDDLDDLDDLDDLDDLDDLDDLDDL
- LUUURRRDRRDLUUURRDRRD
我想压缩这个指令序列。
例如。
1。 压缩前:ULULUL 压缩后:3(UL)
2。 压缩前:DDLDDLDDLDDLDDLDDLDDLDDLDDLDDL 压缩后:10(DDL)
3。 压缩前:LLLLDLLLLDLLLLD 压缩后:3(4LD)
有人知道这样的算法吗?
谢谢。
【问题讨论】:
-
数据压缩是建模(区分可能与不可能)和编码(认为已解决)。编码重复序列与 A. Lempel 和 J. Ziv 的名字有关。尤其是你的#3 让我想起了“压缩指针宏(?方法?)”——依稀记得在 OPM(/L)、EPM 的上下文中阅读过它……在“单词组合算法(Apostolico,A.;Galil)中, Z. (Eds.))" (978-3-642-82456-2) - 已经十年或三年了。
标签: c++ string algorithm compression