【发布时间】:2017-05-06 20:07:16
【问题描述】:
我有一个可以包含任何字母的字符串
string uncompressed = "dacacacd";
我需要按格式压缩这个字符串
string compressed = "d3(ac)d";
如果可能的话,也可以压缩任何子字符串,例如:
string uncompressed = "dabcabcdabcabc";
string compressed = "2(d2(abc))";
有没有办法在没有任何第三方库的情况下实现这一点?
【问题讨论】:
-
肯定有办法的。你试过什么?
-
在谷歌和维基百科中查找。这里是您实施时获得帮助的地方。
-
@Abion47 我尝试使用运行长度编码来实现它,但这样我只能压缩单个字符。
-
@TaW 我整个下午都在搜索,但找不到方法。
-
第二个例子不应该是“2(dabcabc)”吗?我认为“2(d2(abcabc))”将解码为“dabcabcabcabcdabcabcabcabc”
标签: c# string compression