String Compression

Implement a simple run-length encoding (RLE) compression for strings.

PythonIntermediate
Python
# Program for simple string compression (run-length encoding)

s = input("Enter a string: ")

if not s:
    print("Compressed string: ")
else:
    result = []
    count = 1
    for i in range(1, len(s)):
        if s[i] == s[i - 1]:
            count += 1
        else:
            result.append(f"{s[i-1]}{count}")
            count = 1
    result.append(f"{s[-1]}{count}")

    compressed = "".join(result)
    print("Compressed string:", compressed)

Output

Enter a string: aaabbc
Compressed string: a3b2c1

We count consecutive repeating characters and append character+count pairs to build a compressed representation.