【发布时间】:2017-10-06 15:34:15
【问题描述】:
我有大约 100 万套,每套大约有 30 个元素。对于每个集合,我想生成大小为“k”的所有子集,其中 k 将类似于 3 或 4 或 5。我是 Guava 的新手,并决定尝试一下。我找到了 powerSet 方法 (https://google.github.io/guava/releases/21.0/api/docs/com/google/common/collect/Sets.html),它将为我的每个集合生成所有子集。
我可以遍历每个幂集,只取大小小于或等于“k”的子集。但由于幂集的大小为 2 ^ 30,这似乎非常低效。
我认为 Guava 会有一种方法可以让我生成一组大小为 k 的所有子集,但我找不到它。我错过了什么吗?
【问题讨论】:
-
之后你想对结果做什么?您需要
Set界面功能还是Iterable适合您的用例? -
Iterable 没问题,谢谢