Dekodowanie RLE
Kompresja bezstratna: kodowanie RLE - Algorytmy: zakres rozszerzony (Python)
Dekodowanie czyta cyfry liczby powtórzeń (może być ich kilka, np. `12W`), a potem znak, który powtarza tyle razy. Po zakodowaniu i odkodowaniu wracamy dokładnie do danych wejściowych: to sprawdzian, że kompresja jest bezstratna.
def rle_decode(code):
result = ""
count = ""
for char in code:
if char.isdigit():
count += char
else:
result += char * int(count)
count = ""
return result
print(rle_decode("4A3B2C"))
print(rle_decode("12W1B3W"))Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Algorytmy: zakres rozszerzony·Zaloguj się, aby zapisać postęp na koncie.