WebAug 23, 2011 · If you have two sets which are both sorted, you can implement a faster intersection than anything provided out of the box with LINQ. Basically, keep two IEnumerator cursors open, one for each set. At any … WebDec 15, 2024 · A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.
How to find the intersection of two lists in C#?
WebNov 27, 2024 · 2 Answers. Granted the documentation doesn't have any examples, it states that the selector function should select TKey i.e. the type of the second collection. The following should work: var intersect = elements.IntersectBy (elements2, x => x); var except = elements.ExceptBy (elements2, x => x); For more complex types, you may want to … WebSep 10, 2010 · .NET has a number of set operations that work on enumerables, so you could take the set intersection to find members in both lists. Use Any () to find out if the resulting sequence has any entries. E.g. if (list1.Intersect (list2).Any ()) Share Improve this answer Follow edited Sep 10, 2010 at 7:36 answered Sep 10, 2010 at 6:56 Brian … daily motion huis anubis afl 403
c# - How to intersect two different IEnumerable collections
WebLooping through both lists (nieve method): T ~= O (n) * O (n) ~= O (n ^ 2) There may be a quicker method, but I am not aware of it. Hopefully that should justify choosing his method. the binary search method would be O (n log n) + O (n log n), there would be 1 … WebMar 29, 2011 · Intersections have to be performed on two sequences of the same type. It sounds like you don't so much want an intersection between two sets, as a filter of the first sequence based on possible values of z2. For example: HashSet validZ2 = new HashSet (listB.Select (x => x.j6)); var filtered = listA.Where (x => validZ2.Contains … WebYou can indeed use Intersect twice. However, I believe this will be more efficient: HashSet hashSet = new HashSet (list1); hashSet.IntersectWith (list2); hashSet.IntersectWith (list3); List intersection = hashSet.ToList (); Not an issue with small sets of course, but if you have a lot of large sets it could be significant. daily motion huis anubis afl 365