1
3
看看 this question 用于选择连续值的扩展方法。从那里,你可以做如下的事情:
(有点伪代码,但我希望你能看到我要去的地方。) 然而,这只会产生 一 元素丢失时…如果从0到20,它不会生成5、10、15。 把肉放在亨克的第二个建议上:
|
2
3
|
3
3
一个有效而简单的方法就是通过
要使用LINQ,您可以创建完整的列表并找出不同之处,但这似乎有些过分。 考虑到第二部分,确定间隔: 从您的示例中,3或4个值的示例可能会这样做。但即使在检查之后你也不能完全确定 全部的 价值观。示例数据不排除1分钟频率和大量缺失值。 所以你需要很好的规格说明。 |
4
2
如果知道时间间隔,如果您可以访问 Zip 方法(与.NET 4一起提供):
请注意,这将对列表进行两次迭代,以便在源代码是惰性可枚举的情况下,您需要首先对其进行缓冲。那个建筑
如果要确定间隔,您可以得到最小增量:
不过,我做了一些假设:
工作原理:
|
5
0
试试这个:
假设初始列表已排序。 |
6
0
|