On Sun, Nov 08, 2009 at 01:34:21AM +0300, Алексей Турбин wrote: AT> Что-то у Вас слишком хороший коэффициент получился. У меня получается AT> энтропия 23.477 бита супротив 32 то максимально возможный коэффициент AT> сжатия по идее должен быть 1.36. AT> $ perl -le 'sub log2{log($_[0])/log(2)}; sub H{my$p=shift;-$p*log2($p)-(1-$p)*log2(1-$p)}; $n=1000;$m=32; $bits_per_hash=(1<<$m)/$n; print H(1/$bits_per_hash)*$bits_per_hash' AT> 23.4769105882751 AT> $ AT> Я правда не уверен что это правильная энтропия получается (через AT> эквивалентность по битмапу). С моим методом на той тестовой выборке что у меня сгенерировалось у меня экономия в полтора раза получается. -- С уважением, Денис http://freesource.info ----------------------------------------------------------------------------