小编chi*_*147的帖子

从多个列表创建组合列表

我不能完全试图解决这个问题,但我将解释如下,

var combinedCoords = new List<List<int>>();

var coords = new List<List<int>>
{
    new List<int>() {0, 1},
    new List<int>() {0, 1, 2},
    new List<int>() {1, 3, 4, 5},
    new List<int>() {3, 4},
    new List<int>() {7, 8},
    new List<int>() {7, 8, 9},
    new List<int>() {8, 9, 10}
};
Run Code Online (Sandbox Code Playgroud)

在这里,我有coords包含一些的var List<int>; 我需要的是在combinedCoords其中填充一些新列表,其中包含一些共同数字的组合列表.从这里应该有2个组合列表,第一个将是{0,1,2,3,4,5},第二个将是{7,8,9,10}.为了进一步说明我想说的是,下面是一个图形表示,每个圆圈都是一个列表; 括号中的红色数字表示每个列表的索引.

应该如何看待http://www.aboutireland.ie/lists.png

.net c# algorithm list

6
推荐指数
1
解决办法
190
查看次数

Linq 表达式缓慢 - 如果可能,需要优化

我有一个整数列表“numberRangeList”,其中按顺序包含从 62 到 92 的 31 个整数,我正在提取第二个整数列表“extractedList”,其中将包含 10 个整数,其总和等于“total”。问题是计算需要大约30秒,有什么办法可以加快速度吗?

        var numberRangeList = new List<int>() { 62, 63, ...92 };
        var total = 772;
        var extractedList= (from n1 in numberRangeList
                      from n2 in numberRangeList
                      from n3 in numberRangeList
                      from n4 in numberRangeList
                      from n5 in numberRangeList
                      from n6 in numberRangeList
                      from n7 in numberRangeList
                      from n8 in numberRangeList
                      from n9 in numberRangeList
                      from n10 in numberRangeList
                      where n1 + n2 + n3 + n4 + n5 + n6 + n7 + …
Run Code Online (Sandbox Code Playgroud)

c# linq performance time-complexity

4
推荐指数
1
解决办法
104
查看次数

标签 统计

c# ×2

.net ×1

algorithm ×1

linq ×1

list ×1

performance ×1

time-complexity ×1