Algorithm 查找数据集中元素之间关系的算法

Algorithm 查找数据集中元素之间关系的算法,algorithm,set,relation,Algorithm,Set,Relation,我有一个数据集,由一个集合到另一个集合的关系组成。简化示例如下: {A,B,C}->{1,2,3}顺序可能改变{2,1,3}也是可能的 {B,D}->{2,4} {A,D}->{1,4} 我需要找到元素之间的关系,以便: A->1 B->2 C->3 D->4 对于这类任务,有没有已知的算法?您可以用二部图中的最大匹配来模拟。制作两组顶点,例如一组包含顶点:S_1={A,B,C,D},另一组包含元素S_2={1,2,3,4} 如果存在集S〃U 1,S〃U 2,则在S〃U 1[i]和S〃U 2[

我有一个数据集,由一个集合到另一个集合的关系组成。简化示例如下:

{A,B,C}->{1,2,3}顺序可能改变{2,1,3}也是可能的

{B,D}->{2,4}

{A,D}->{1,4}


我需要找到元素之间的关系,以便:

A->1

B->2

C->3

D->4


对于这类任务,有没有已知的算法?

您可以用二部图中的最大匹配来模拟。制作两组顶点,例如一组包含顶点:S_1={A,B,C,D},另一组包含元素S_2={1,2,3,4}

如果存在集S〃U 1,S〃U 2,则在S〃U 1[i]和S〃U 2[j]之间添加边,使得S〃U 1[i]∈s"u 1,s_2[j]及in ;;s〃U 2和s〃U 1→苏2。然后使用一种著名的算法(例如匈牙利算法)在相应的二部图中找到最大匹配

例如,在您的案例中,我们有边:

A,1
A,2
A,3
A,4
B,1
B,2
B,3
B,4
C,1
C,2
C,3
D,2
D,4
例如,您建议的解决方案只是该图中的最大匹配