当前位置: 代码迷 >> .NET分析设计 >> 数据段叠加求差的有关问题,请问一下
  详细解决方案

数据段叠加求差的有关问题,请问一下

热度:224   发布时间:2016-05-01 22:32:56.0
数据段叠加求差的问题,请教一下
我现在有一个发票号段,我要在现有的发票号段上做如下操作:

增加号段: 1-100, 201-500
删除号段: 50-150,260-300,450-600.

如何得出最终要真实增加的号段和删除的号段?
意思就是要去掉这类中的重复数据,然后分别得到各自真实的数据。
------解决思路----------------------
 //增加号段: 1-100, 201-500
            //删除号段: 50-150,260-300,450-600.

            List<int> addList = new List<int>();
            List<int> disList = new List<int>();

            addList.AddRange(Glist(1, 100));
            addList.AddRange(Glist(201, 500));
            var addquery = addList.Distinct();

            disList.AddRange(Glist(50, 150));
            disList.AddRange(Glist(260, 300));
            disList.AddRange(Glist(450, 600));
            var disquery = disList.Distinct();

            //addquery与disquery差集
            var a = addquery.Except(disquery); //增加的号段
            var b = disquery.Except(addquery); //删除的号段

            Console.ReadKey();

static IEnumerable<int> Glist(int s, int e)
        {
            //最好验证下s和e的大小
            return Enumerable.Range(s, e - s + 1);
        }

------解决思路----------------------
1楼,这个需求都能理解啊。。。。我只能……………………
------解决思路----------------------
膜拜1楼,这需求都能懂
  相关解决方案