c#最简易版求数组和datatable的并集交集差集

来源:互联网 发布:知产法务助理就业 编辑:程序博客网 时间:2024/06/01 10:02

用循环用得多了,竟然忘记了数组里面用自己的交集并集和差集的方法。

//求字符串的差集 交集 并集            string text1 = "123 124 134 234";            string text2 = "123 124 134 234  567 789 012";            var arr1 = Regex.Split(text1, @"\s+");            var arr2 = Regex.Split(text2, @"\s+");            var arr3 = arr2.Except(arr1);//差集            Console.WriteLine(string.Join(" ", arr3));            var arr5 = arr2.Intersect(arr1);//交集            Console.WriteLine(string.Join(" ", arr5));            var arr6 = arr1.Union(arr2);//并集,重复数据不会显示            Console.WriteLine(string.Join(" ", arr6));


求datable的交集合集并集

 DataTable dt1=new DataTable();            DataTable dt2 = new DataTable();            InitDataTable1(dt1);            InitDataTable2(dt2);            IEnumerable<DataRow> queryExcept = dt1.AsEnumerable().Except(dt2.AsEnumerable(), DataRowComparer.Default);//差集            IEnumerable<DataRow> queryUnion = dt1.AsEnumerable().Union(dt2.AsEnumerable(), DataRowComparer.Default);//并集            IEnumerable<DataRow> queryIntersect = dt1.AsEnumerable().Intersect(dt2.AsEnumerable(), DataRowComparer.Default);//交集            DataTable dt3 = queryExcept.CopyToDataTable();            DataTable dt4 = queryUnion.CopyToDataTable();            DataTable dt5 = queryIntersect.CopyToDataTable();


0 0
原创粉丝点击