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:

AAAAABBCCCC

RLE:

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:

ABCDEFG

RLE might actually make it longer.

πŸ”΄ 2. Dictionary Coding

πŸ’‘ Idea (simple)

Instead of repeating long patterns, we:

  1. Store patterns in a dictionary

  2. Replace them with short references (indexes)

Example

Original:

the cat sat on the mat and the cat ran

Dictionary:

1 = the  
2 = cat  
3 = sat  
4 = on  
5 = mat  
6 = and  
7 = ran

Encoded:

1 2 3 4 1 5 6 1 2 7

πŸ‘‰ Repeated words are replaced with short numbers