在 Python 中执行字符串压缩的程序
假设我们有一个字符串s。我们必须将此字符串压缩为运行长度编码形式。所以当一个字符像'bbbb'这样连续重复k次时,字母'b'连续重复四次,所以编码形式将是'b4'。对于单个字符,我们不会将计数添加到其中。
因此,如果输入类似于s="abbbaaaaaaccdaaab",那么输出将是ab3a6c2da3b
示例
让我们看看以下实现以获得更好的理解-
def solve(s): res = "" cnt = 1 for i in range(1, len(s)): if s[i - 1] == s[i]: cnt += 1 else: res = res + s[i - 1] if cnt > 1: res += str(cnt) cnt = 1 res = res + s[-1] if cnt > 1: res += str(cnt) return res s = "abbbaaaaaaccdaaab" print(solve(s))
输入
"abbbaaaaaaccdaaab"输出结果
ab3a6c2da3b