回答
你需要获取两个列表的交集是相同的:
bool areIntersected = t1.Intersect(t2).Count() > 0;
在回答你的问题修改:
bool areSameIntersection = t1.Except(t2).Count() == 0 && t2.Except(t1).Count() == 0;
我认为我的问题没有清晰表达......我修改了问题 – Graviton 2009-10-27 03:54:58
如果't1'为{1,2,2 }和't2'为{1,2,2},这将错误地返回false。 – 2009-10-27 04:42:23
如果list2中list1元素的数量等于list1中list2元素的数量,那么这两个列表都包含相同的n元素的数量,都是彼此的子集 - 换句话说,它们都包含相同的元素。
if (list1.Count(l => list2.Contains(l)) == list2.Count(l => list1.Contains(l)))
return true;
else
return false;
编辑:前OP补充说{1,2,2}等于{1,1,2}(关于重复条目的处理)将其写入。
只要元素在订单上具有可比性,就可以工作。
bool equal = list1.OrderBy(x => x).SequenceEqual(list2.OrderBy(x => x));
string stringA = "1,2,2";
string stringB = "2,1";
HashSet<string> setA = new HashSet<string>((stringA.Trim()).Split(',').Select(t => t.Trim()));
HashSet<string> setB = new HashSet<string>((stringB.Trim()).Split(',').Select(t => t.Trim()));
bool isSetsEqual = setA.SetEquals(setB);
REFERENCE定义两组是否相等:
使用HashSets似乎是最优雅的方式来做到这一点(也可能相当快)。 – ThisGuy 2013-12-22 06:14:18
- 1. 检查两个查询是否相同
- 2. 如何检查两个元组列表是否相同
- 3. 检查两个列表是否包含相同的元素
- 4. 如何检查两个列表是否部分相同haskell
- 5. 如何检查列表中的两个数字是否相同
- 6. 检查列表中的两个项目是否相同?
- 7. 检查两个列表是否有相同的项目
- 8. Swift:检查两个NSDates是否相同
- 9. 检查两个json是否相同
- 10. 检查两个ID是否相同
- 11. 检查两个jar类是否相同
- 12. 检查两个Dask是否相同
- 13. 检查两个列表中的相同位置是否有相同的值
- 14. 检查两个表是否相等
- 15. 如何检查两个不同的LINQ查询是否有相同的结果?
- 16. 检查是否两个PHP列表是完全不相交
- 17. 检查两个numpy阵列是否相同
- 18. 检查两种类型是否相同
- 19. 检查两棵树是否相同
- 20. 库检查两个正则表达式是否相等/同构
- 21. Z3检查两个表达式是否相同
- 22. 检查两个Python正则表达式模式是否相同
- 23. 检查两个工作表是否相同
- 24. 检查两个数字列表是否相等
- 25. LINQ检查是否存在在列表
- 26. Pythonic的方式来检查是否两个列表的列表是相等的
- 27. 如何检查python中两个列表的内容是否相同?
- 28. 计划,检查两个列表中的任何内容是否相同
- 29. 检查两个列表的内容是否相同的最佳方法?
- 30. Visual Basic检查两个图像是否相同或不同
@ 280Z28:所以你因为答案而拒绝了一个问题?听起来不太合理。 – Graviton 2009-10-27 06:15:10
@Ngu,感谢您的澄清。 – 2009-10-27 06:18:44
HashSet的SetEquals最适合检查两个集合是否与此问题中定义的相同 – Lijo 2012-12-02 09:25:13