N Stage string compression : 解压算法

N Stage string compression : Algorithm for decompression

您有一个给定的键值对:

"Adsddf" : ?

“ds?xsc”::

"csdcs:" : #

...n 项。

目标是解压缩一个字符串: 示例:字符串:“ac3d:cs?”将转换为:ac3ddsAdsddfxsccsAdsddf

基本上对每个字符进行原位替换。

实现此目的的最佳算法是什么?

Best 有点模糊,但这是一个可能的解决方案。

伪代码

# reverse lookup
rev = {}
for key, value in items
  rev[value] =  key

result = ""

decode(input)
  for letter in input
    if letter in rev
      decode(rev[letter])
    else
      result.append(letter)

注意没有循环...