2011-06-06 111 views
0

我有一组值,每个值都有一个可能的组。 值可以重复,但在不同的组。最小分组算法

什么将是一个最佳的算法,得到基团的最小数目

样品组: (12,b)组 (38,A组) (12,A组)

期望结果: (38,A组) (12,A组)

(只有一个组用于)

- 编辑: 我需要一个算法从上面的例子中找到一组最小数量的组。 如果我想有一个坏的算法将选择 (12,b组) (38组) 这2组进行相同的价值观,而不是使用一个,不是我想要的

+0

我不知道我确切地理解你想要什么。你能澄清吗? – 2011-06-06 14:42:31

回答

1

如果我没有理解正确的问题,这是Set cover problem

链接中描述的贪婪算法从组a开始,然后终止,因为这已经涵盖了所有。

请注意,一般而言,它只会产生最佳解决方案的近似值。

+0

事实上,NP-完全优化! – davin 2011-06-06 15:03:35