首页 > 解决方案 > 算法 - 如何获取时间序列中的活动会话数?

问题描述

我有一张表,我们在其中维护用户的登录和注销时间。现在我想向管理员显示一个表格,其中包含活跃用户的数量,时间如下:

00:00 - 250
00:15 - 225
00:30 - 240
00:45 - 190
01:00 - 240
....
..

我们应该使用什么算法?

提前致谢 :)

标签: algorithmgraphtime-series

解决方案


您可以简单地遍历所有用户的登录-注销对列表,并将用户(或增加该用户的计数)放入适当的存储桶中。现在,如果特定用户跨越多个存储桶,您将不得不考虑将该用户(或增加该用户的计数)放在多个存储桶中。

这就是算法的全部内容。应该是最简单的一种了。

如果您想了解实现细节,您可以使用 aHashMapunordered_mapwho 的键将是您要报告用户数量的时间,并且该值将从零开始,每次获得 a 时您将递增该值新用户。


推荐阅读