计算大多数重复元素的算法;

时间:2014-06-09 13:05:38

标签: php algorithm

我有一个结构树blook - > house - > room
每个房间都有一些数据和具体状态redbluegreenempty

我必须遍历树并在每个level上显示最常见的颜色。

是否存在类似于BinaryMask的算法为每种颜色指定数值, 并存储在那里"总和"作为一个整数,并在任何时候能够从总和中提取最常见的颜色?

(如果某些颜色具有相同的计数,则优先级为red > blue > green

1 个答案:

答案 0 :(得分:1)

使用数组... 像这样,

$colors = Array('red' => 0, 'blue' => 0, 'green' => 0, 'empty' => 0);
//assign values
$colors['red'] += 1;
//get maximun
array_keys($colors, max($colors))