Run length encoding and dictionary coding for lossless compression.
lossless compression works by removing redundancy β#
two key ways are
run length encoding
dictionary coding
π΅ 1. Run Length Encoding (RLE)
π‘ Idea (very simple)
If data repeats, instead of storing it again and again, we store:
π the value + how many times it repeats
Example
Original data:
AAAAABBCCCCRLE:
5A2B4Cπ Instead of writing A five times, we say β5Aβ
β
π§ Why it works
It is effective when:
There are lots of repeated values
It is bad when:
Data has little or no repetition
Example:
ABCDEFGRLE might actually make it longer.
π΄ 2. Dictionary Coding
π‘ Idea (simple)
Instead of repeating long patterns, we:
Store patterns in a dictionary
Replace them with short references (indexes)
Example
Original:
the cat sat on the mat and the cat ranDictionary:
1 = the
2 = cat
3 = sat
4 = on
5 = mat
6 = and
7 = ranEncoded:
1 2 3 4 1 5 6 1 2 7π Repeated words are replaced with short numbers