algorithm - 最小结婚可能算法

标签 algorithm graph-theory

有些男性为 M1、M2、...Mn,有些女性则为 W1、W2、W3、.....Wm。并且还给出了一个二维矩阵,该矩阵讲述了他喜欢的男人的兴趣。 计算与所有男性和女性结婚所需的婚姻数量。

约束:一个男人可以与多个女人结婚,一个女人可以与多个男人结婚。

我认为的方法:我认为这个问题可以用二分法解决,但我很困惑用什么案例来开始这个问题。请指导解决这个问题。

最佳答案

您想要最小的边缘覆盖,这是一个多项式时间问题。您可以使用 Hopcroft–Karp 算法来查找最大匹配,然后从每个未连接点到其任何可能的配对绘制一条边。

参见:http://en.wikipedia.org/wiki/Edge_cover

关于algorithm - 最小结婚可能算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12200554/

相关文章:

java - java中泛型类中的非泛型构造函数

python - Networkx 传播节点和短缺标签

algorithm - 删除具有固定边的有向图的循环依赖性

arrays - 使用基本操作的解决方案查找算法

python - 如何将图的节点/顶点表示为字母或名称值而不是数字

algorithm - 按排序顺序列出 B 树中的键所需的时间?

android - 离线传输路由算法

algorithm - 为什么DFS和BFS的时间复杂度都是O(V+E)

java - 在数组中搜索缺失数字时的性能

计算推土机距离的Java代码/库