我有一个应用程序,人们可以给对方打分,满分10分。每天午夜,我都想为每个成员计算一个“匹配”。一般来说,我希望让每个人都尽可能地快乐。
So at the midnight, I have an oriented graph like so :
1 -> 2 : 7.5 // P1 give a 7.5/10 to P2
1 -> 3 : 5
1 -> 4 : 9
2 -> 3 : 6
2 -> 1 : 4
etc.
为了简单起见,让我们假设如果P1给P2一个5,P2给P1一个7,那么匹配的P1 - P2将具有5+7- (7-5)/2 = 11的权重(我
我们有n个盒子和k个球,不同的colors.Each容器在it.We中很少有球,可以从每个盒子中选择最多一个球。
我们能收集不同颜色的k个球吗?注意:每个容器最多有一个颜色的球。
示例:
假设我们有5个容器,4种不同颜色的A,B,C,D
Box1 - A, D
Box2 - C,B
Box3 - D, A
Box4 - D
Box5 - D
在这里,你不能选择4个颜色的球A,B,C,D从这些boxes.The条件是,你只能从每个盒子中挑选一个球。
我不相信在二部图中找到最大独立顶点集的算法,除了在所有可能的独立集中寻找最大值的蛮力方法之外。
我想知道找到所有可能的顶点集的伪代码。
假设给定一个有4个蓝色顶点和4个红色顶点的二部图。目前,我将
Start with an arbitrary blue,
find all red that don't match this blue
put all these red in Independent Set
find all blue that dont match these red
put these blue in Independent Set
Repeat
我有两个列表,listA和listB,可能有不同的长度。为了获得最好的匹配,我希望将listA的对象一对一地与来自listB的对象进行匹配。
我有一个算法,它可以给出任意一对对象的匹配分数。我需要的是一个有效的(并相当容易阅读)算法,以获得最高的得分比赛在一起1-1。在listA中,每个对象只有一个完全匹配,但是可能有相同的对象具有相同的分数,而在这种情况下,匹配的对象并不重要。此外,由于匹配分数不够高,某些对象是否留在其中一个或两个列表中并不重要。
我想出的算法可能有一些我没有发现的缺陷,而且可能有一种我一直找不到的标准方法,所以我正在寻找建议/修正。
以下是我的尝试:
for (a in