假如: A = […….], B = [….]
A 并 B = 全部 linq : a.union(b)
A 交 B = 中间那块 linq: a.Intersect(b)
A 差 B = A 少个口 linq : a.Except(b)
B 差 A = B 少个口 linq: b.Except(a)
我记得这个个好像是初中或高中的知识来着。
http://zh.wikipedia.org/zh/%E9%9B%86%E5%90%88_(%E6%95%B0%E5%AD%A6)
var x = new[] { 1, 2, 3 };
var y = new[] { 1, 2, 4 };
var z = x.Intersect(y).ToArray(); // {1,2} x ∩ y
var z1 = x.Union(y).ToArray(); // {1,2,3,4} x ∪ y
var z2 = x.Except(z).ToArray(); //{3} x - y
var z3 = y.Except(z).ToArray(); //{4} y-x
var z4 = z2.Union(z3).ToArray(); //{3,4} A△B