小编Sur*_*esh的帖子

生成具有步长值的序列

我有以下输入:

double zmin;
double zmax;
int count;
int N; //Total number of element in result array
Run Code Online (Sandbox Code Playgroud)

我想生成一个双数组序列,其中zmin为第一个值,zmax为最后一个值.但是从第二个值到最后一个,但它应该被(zmax-zmin)/ count所左右.

例:

zmin = 1;
zmax = 10;
count = 3
Run Code Online (Sandbox Code Playgroud)

预期结果:

double[] result = { 1, 4, 7, 10}
Run Code Online (Sandbox Code Playgroud)

我的尝试:

double[] result = Enumerable.Repeat(zmin, N).Select(iv => (iv +(zmax-zmin)/count)).ToArray();
Run Code Online (Sandbox Code Playgroud)

.net c# linq

7
推荐指数
1
解决办法
3277
查看次数

C#列表中的最小差异

我想在xy点数据列表中找到最小差异.(可以包含重复的x值和y值)

Example:
List<Point> differenceList = new List<Point>() { (10,0), (10,20), (20,30), (12,61) };
Run Code Online (Sandbox Code Playgroud)

预期结果

X difference = 2 
Y difference = 20 
Run Code Online (Sandbox Code Playgroud)

是否有可能优雅地使用linq/lambda表达式?谢谢!

c# linq

2
推荐指数
1
解决办法
2688
查看次数

c#linq仅保留基于列表的字典值匹配

我有一个复合词典和一个列表

Dictionary<Point, List<int>> GroupedIndex
int[] TobeMatched
Run Code Online (Sandbox Code Playgroud)

现在我想检查每个键,TobeMatched数组中是否有任何匹配的值.如果匹配,则仅保留该键的匹配值并删除其他值.如果没有匹配项,则删除密钥.

Example:

GroupedIndex: [0] -> Key [X=1;Y=1]; Values [0] -> 5, [1] -> 10
              [1] -> Key [X=1;Y=2]; Values [0] -> 1, [1] -> 3, [2] -> 6
TobeMatched: {1,2,6}

Result expected:
New dictionary: [0] -> Key[X=1;Y=2]; Values [0] -> 1, [1] -> 6
Run Code Online (Sandbox Code Playgroud)

是否有可能在linq中实现这一目标?

c# linq

0
推荐指数
1
解决办法
1125
查看次数

Groupby值和返回索引

我想使用linq使用值对数据进行分组,并将相应的索引作为数组返回.

int[] input = {0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,2,2,2,2}
Run Code Online (Sandbox Code Playgroud)

预期产出

Dictionary<int,int[]> ouput = {0->[0,1,2,3,8,9,10,11]; 1 -> [4,5,6,7,12,13,14,15]; 2 -> [16,17,18,19]}
Run Code Online (Sandbox Code Playgroud)

任何人都可以指导我吗?

c# linq

0
推荐指数
1
解决办法
821
查看次数

标签 统计

c# ×4

linq ×4

.net ×1