<?php
function entropy($a, $b) {
$options = array_filter(func_get_args());
$total = array_sum($options);
$entropy = 0;
foreach ($options as $size) {
$part = $size / $total;
$entropy -= $part * log($part, 2);
}
return $entropy;
}
var_dump('1 4', entropy(1, 4)); // abbbb
echo "\n";
var_dump('2 2', entropy(2, 2)); // aabb
echo "\n";
var_dump('2 2 2', entropy(2, 2, 2)); // aabbcc
echo "\n";
var_dump('2 2 2 2', entropy(2, 2, 2, 2)); // aabbccdd
echo "\n";
preferences:
44.6 ms | 402 KiB | 5 Q