我有一个完整的方向图。在每条边上都有一组数字。该集合默认保存在源节点上。请注意,每个号码仅保存一次。例如,如果一个节点有两条边,集合 {1,2,3} 和 {2,3,4} 它只需要 4 个空格。现在,我们可以选择一条边来将集合从源移动到目标,但会损失一个空间。问题是哪个设置移动到另一侧以获得最小的空间使用。
例如,如果我有以下图表
1->2: {123}
1->3: {456}
2->1: {}
2->3: {456}
3->1: {}
3->2: {123}
原始空间使用量为 12。但如果我将所有集合移动到目的地,则使用空间为 3+3=6,其中 4 个空间损失结果将是 10,这比原始设置要好。
有人对这个问题有任何提示吗?这类似于 NP 完全问题吗?