选择最大选择数

时间:2014-03-10 14:08:42

标签: algorithm

我们有N个水果和M个选择来选择那些水果.M行有一些整数,第一个是K,每个M行在第一个值(即K)之后跟随K个整数,表示水果的指数在那个选择中选择。 我需要找出可以选择的最大数量的选择。

注意: - 特定指数只有一个水果。

示例输入: -

4 3

2 1 2

2 2 3

2 3 4

输出: -

2

我们可以选择第一和第三选择。

我应该使用哪种算法来解决这个问题?

2 个答案:

答案 0 :(得分:0)

这是最大独立集

的变体

本文中有非常详细的算法来寻找最大独立集: Algorithms for Maximum independent Sets

此处提供了一种并行方法:Lecture Notes on a Parallel Algorithm for Generating a Maximal Independent Set

this是一个java实现。

答案 1 :(得分:0)

这是set packing problem,是经典NP完全问题之一。没有有效的解决方案,但您可以尝试回溯算法(慢但精确)或贪婪近似(快速但次优)。