我有一本字典。如果 V 在 DICT[K] 中,则 someFunc(k, v) 和 someFunc(v, k) 都返回 true(并且 K 在 DICT[V] 中)。字典可能如下所示:
{
1: [2, 3, 5],
2: [3, 1, 5],
3: [1, 2],
5: [2, 1],
}
我想在符合此标准的字典中找到具有一定长度的所有数字集:对于字典中的任何对, someFunc(x, y) 和 someFunc(y, x) 必须为真。例如,对于我展示的字典:
{1, 2, 3} 将是一个有效的长度为 3 的集合。条件必须有效,因为所有项目都包含其他项目:
- dict[1] 包含 2, 3
- dict[2] 包含 1, 3
- dict[3] 包含 1, 2
如果我知道所有有效集合必须包含给定数字,那么在给定字典中找到所有这些给定长度的集合的最佳方法是什么。