【发布时间】:2011-06-28 01:42:23
【问题描述】:
我正在做一个最大公因数和最小公倍数作业,我必须列出公因数。 Intersection() 将不起作用,因为它会删除重复项。 Contains() 将不起作用,因为如果它在第二个列表中看到 int,它会从第一个列表中返回所有匹配的 int。有没有办法做一个不相干的交叉点?
编辑:抱歉没有提供示例,这就是我的意思:
如果我有套装:
{1, 2, 2, 2, 3, 3, 4, 5}
{1, 1, 2, 2, 3, 3, 3, 4, 4}
我想要输出
{1, 2, 2, 3, 3, 4}
【问题讨论】:
-
如果 a 是 { 3,3,3,3 } 并且 b 是 { 3,3 },你期望输出中有多少个 3? 2、4 还是 6?
-
我认为下面的答案混淆了这个问题。正确的问题是“找到两组的交集”。问题是
Intersect运算符删除重复项 - 解决问题而不删除重复项。 -
为什么?这会删除重复项。解释你的逻辑。
-
@JonathanGrynspan 当然它不会删除直接来自交叉操作的重复两个 3,绝对不会删除重复项!
-
或者你可能想参考集合交集操作的基本定义。
标签: c# duplicates intersection