【发布时间】:2020-09-23 12:57:34
【问题描述】:
例如,我们有这种列表(“A”、“B”、“C”、“D”)。我们需要相互比较,而不是重复比较,例如输出应该是这样的。
- “A”与“B”,“C”与“D”
- “A”与“C”,“B”与“D”
-
“A”与“D”,“B”与“C”
List<String> list = Arrays.asList("A", "B", "C", "D"); for (int i = 0; i < list.size(); i++) { for (int j = i + 1; j < list.size(); j++) { System.out.print(" Compare " + list.get(i) + " " + list.get(j)); } System.out.println(); }
此代码返回所有组合,但不分组。
【问题讨论】:
-
您应该查看 power set,并考虑将子集限制为 size = 2。
-
这能回答你的问题吗? Obtaining a powerset of a set in Java
标签: java arrays algorithm sorting arraylist