检查两个列表是否相等并保持顺序

user8512043:

我试图匹配两个具有相同值的列表,所以我使用了下面的方法:

bool equal = false;
equal = aLst1.SequenceEqual(aLst2);

样本数据

aLst1 = { 1, 2, 3, 4 } 
aLst2 = { 1, 2, 3, 4 }

aLst1 = { 1, 2, 3, 4 } 
aLst2 = { 2, 3, 1, 4 }

因此,对于上面的列表,由于它们具有相似的值而与它们的顺序无关,因此返回true。在示例数据部分-第二部分中,我更喜欢检查顺序。如果订单不匹配,则应返回false。

aLst1 = { 1, 2, 3, 4 } 
aLst2 = { 2, 3, 1, 4 }

我当时在想使用,Order By但无法解决。在这种情况下可以使用其他任何方法吗?

拉兹(Raz Megrelidze):

这是解决问题的通用方法:

    static bool ListsHaveSameElements<T>(IEnumerable<T> list1, IEnumerable<T> list2)
    {
        return list1.Count() == list2.Count() &&
               list1.OrderBy(x => x).SequenceEqual(list2.OrderBy(x => x));
    }

Count()出于效率原因添加了检查。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查两个列表是否相等

在对一个列表的元素进行排序后,检查两个列表的顺序是否相等

检查两个无序列表是否相等

Python检查两个json列表是否相等

通过Python检查两个列表是否相等

检查两个对象列表是否相等

检查两个序列是否相等

检查两个变量是否相等

测试两个列表是否相等

使用自定义相等函数检查两个集合是否相同(忽略顺序)

检查数组列表的两个列表是否相等的Python方法

Java ArrayList-如何判断两个列表是否相等,顺序无关紧要?

如何根据列表中的两个不同值获得 2 个计数并检查两个计数是否相等?

如何在Redis中检查两个列表是否相等

如何使用Python检查两个列表中的字符串是否几乎相等

检查数组列表中的两个连续坐标对在Java中是否相等

haskell如何检查两个元组列表是否相等并合并

如何遍历列表并检查两个对象是否相等

如何检查Bash中两个路径是否相等?

检查两个对象在Java中是否完全相等

如何比较两个DynamicJsonObjects以检查它们是否相等?

如何检查两个对象数组是否与 javascript 相等?

如何检查两个 NumPy 数组是否近似相等?

如何检查两个Torch张量或矩阵是否相等?

jQuery验证-检查两个密码是否相等

jQuery验证-检查两个密码是否相等

如何检查两个Map对象是否相等?

如何检查两个压缩文件是否相等?

自动检查两个对象是否相等?