beck4855255 2014-07-04 10:21
浏览 205
已采纳

如何求解满足以下场景的集合元素

有以下对应的集合,求存在于所有集合(不要求同时存在于所有集合中)最小元素集合

X1场景对应集合(A、B、C)
X2场景对应集合(B、C)
X3场景对应集合(D)
X4场景对应集合(A、F)
X5场景对应集合(B、E)

比如上述场景结果集合为B、D、F
B存在于X1,X2,X5场景,D存在于X3场景,F存在于X4场景。
不知各位有什么好的算法解决。

  • 写回答

1条回答 默认 最新

  • mingxuxu 2014-07-05 15:22
    关注

    对算法不是很擅长,给一个复杂度有点高的算法:

    设最小集合的候选集合为C,

    初始化:C={X1的每个元素}// 如C={A},{B},{C}三个集合

    对于每个Xi,做如下操作:
    foreach 集合i in C
    集合i中的元素与Xi的元素做归并
    //如X2与C归并 {AB},{AC},{B},{C}
    归并后去除C中重复的元素//如AB和BA的归并得到的结果是相同的
    End

    对于C,取其中长度最小的结合就是最终的结果。

    后续可以以此为基础做优化,比如{AB},{AC},{B},{C}这个中间结果来说,{AB},{AC}这两个候选集合是否可以去掉(没想出来是否可以)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 目详情-五一模拟赛详情页
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line