我有一个包含 500 个元素的 C# Queue。
我需要通过以 10 个时间跨度为一组并选择它们的平均值将它们减少到 50 个元素。
有没有干净的方法来做到这一点?我认为 LINQ 会有所帮助,但我想不出一个干净的方法。有任何想法吗?
最佳答案
我会使用 Chunk 函数和一个循环。
foreach(var set in source.ToList().Chunk(10)){
target.Enqueue(TimeSpan.FromMilliseconds(
set.Average(t => t.TotalMilliseconds)));
}
Chunk 是我的标准助手库的一部分。
http://clrextensions.codeplex.com/
Source for Chunk
关于c# - 将许多时间跨度减少到更少的平均时间跨度的清洁方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/655326/