给定2个int数组,例如,foo和bar,检查数组条包含至少一个foo包含的项的最有效方法是什么.应该返回true/false.
我怀疑嵌套,foreach但只是想知道是否有更好的方法?
Oll*_*lli 108
使用LINQ:
array1.Intersect(array2).Any()
Run Code Online (Sandbox Code Playgroud)
注意:使用Any()确保在找到第一个相等对象时停止交叉算法.
C#3:
bool result = bar.Any(el => foo.Contains(el));
Run Code Online (Sandbox Code Playgroud)
C#4并行执行:
bool result = bar.AsParallel().Any(el => foo.AsParallel().Contains(el));
Run Code Online (Sandbox Code Playgroud)