Algorithm 二部图算法

Algorithm 二部图算法,algorithm,optimization,graph,bipartite,Algorithm,Optimization,Graph,Bipartite,考虑以下与图论相关的问题: 设G为二部图。为了使问题更具体,假设G是两个集合的不交并,例如I和S 我用名字1,2,3,4,5,6,7,8,9,10代表个人 S代表名为a、b、c、d、e、f、g、h的技能。 所以每个人都有一些技能,比如 个人1拥有技能b、d、g和h, 个人2拥有技能a、f和h, 等 [在本例中,数据是随机给出的] 我们的目标是建立一个团队,该团队由来自I的最少数量的个人组成,以这样的方式,S中的每项技能都将在团队中得到体现,也就是说,对于S中的每项技能,团队中存在一名拥有S技能的

考虑以下与图论相关的问题:

设G为二部图。为了使问题更具体,假设G是两个集合的不交并,例如I和S

我用名字1,2,3,4,5,6,7,8,9,10代表个人 S代表名为a、b、c、d、e、f、g、h的技能。 所以每个人都有一些技能,比如

个人1拥有技能b、d、g和h, 个人2拥有技能a、f和h, 等 [在本例中,数据是随机给出的]

我们的目标是建立一个团队,该团队由来自I的最少数量的个人组成,以这样的方式,S中的每项技能都将在团队中得到体现,也就是说,对于S中的每项技能,团队中存在一名拥有S技能的成员

这个问题有名字吗?有没有一个有效的算法可以解决这个问题呢?

听起来像是 l中的项目组创建了s的子集

听起来像
l中的项目组创建s的子集

您的问题是最小集合覆盖问题:

从N个批次中的M处购买X个项目,其中M是获得所有X个项目所需的最小批次数

在你的例子中,技能是项目,学生是很多


这个问题是NP难问题。有效的解决方法是使用贪婪集覆盖近似算法。

您的问题是最小集覆盖问题:

从N个批次中的M处购买X个项目,其中M是获得所有X个项目所需的最小批次数

在你的例子中,技能是项目,学生是很多


这个问题是NP难问题。解决这个问题的有效方法是使用贪婪的集合覆盖近似算法。

听起来像家庭作业语法。。这是家庭作业吗?@Yochai Timmer:家庭作业在暑假结束;听起来像是家庭作业语法。。这是家庭作业吗?@Yochai Timmer:家庭作业在暑假结束;谢谢你的回复让我有机会看看Cormen和all关于算法的经典书籍:集合覆盖问题是许多常见组合问题的抽象。作为一个简单的例子,假设X代表解决问题所需的一组技能,并且我们有一组给定的人员来解决问题。我们希望成立一个委员会,成员人数尽可能少,这样,对于X的每一项必要技能,委员会中都有一名成员具备这项技能。谢谢。你的回复让我有机会看看Cormen和all关于算法的经典书籍:集合覆盖问题是许多常见组合问题的抽象。作为一个简单的例子,假设X代表解决问题所需的一组技能,并且我们有一组给定的人员来解决问题。我们希望成立一个委员会,成员人数尽可能少,这样,对于X方面的每一项必要技能,委员会中都有一名成员具备这种技能。