この圧縮方法だと、連続した数字が多ければ多いほど文字数(データ量)は削減できますが、0,1が1つずつ交互に並んでいた場合は圧縮効果はないですね。
たとえば、「0の連続数、1の連続数・・・」の圧縮方法で
「0001 1100 0000 1111」のデータ(16文字)を圧縮すると「3364」の4文字まで圧縮できますが、
「0101 0101 0101 0101」の同じ16文字のデータを圧縮すると「1111 1111 1111 1111」の16文字となり圧縮効果は全く得られません。
つまり、データによって圧縮方法を使い分ける必要が出てきますね。
といった事を書けばいいのではないでしょうか。