gpt4 book ai didi

c# - 计算 DateTimes 集合之间的平均 TimeSpan

转载 作者:太空狗 更新时间:2023-10-29 22:28:24 26 4
gpt4 key购买 nike

假设我们正在跟踪用户执行特定操作的时间,并且我们想知道所述操作之间的平均时间。

例如,如果用户在这些时间执行了此操作:

  • 今天下午 1 点
  • 今天下午 3 点
  • 今天下午 6 点

结果是 2.5 小时。

我实际上已经解决了这个问题,但我觉得我的解决方案比必要的更复杂。我会将其发布为答案。

最佳答案

看来您基本上是在寻找 Max - Min 除以 Count。

    public TimeSpan? Average
{
get
{
var diff = _dateTimes.Max().Subtract(_dateTimes.Min());
var avgTs = TimeSpan.FromMilliseconds(diff.TotalMilliseconds / (_dateTimes.Count() - 1));
return avgTs;
}
}

确保检查是否有多个 DateTime。

更新:如果你使用 Ticks 会更准确。

TimeSpan.FromTicks(diff.Ticks / (_dateTimes.Count() - 1));

关于c# - 计算 DateTimes 集合之间的平均 TimeSpan,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6156321/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com