【发布时间】:2011-02-15 19:06:18
【问题描述】:
我想知道是否有一种算法可以计算“最常见的项目”而不必对每个项目进行计数?例如,假设我是一个搜索引擎,想要跟踪 10 个最受欢迎的搜索。我不想做的是为每个查询保留一个计数器,因为我可能有太多查询无法计算(而且大多数都是单例)。有一个简单的算法吗?也许是概率性的东西?谢谢!
【问题讨论】:
-
限制时间窗口并允许旧搜索从某种 MRU 列表的末尾消失怎么样?散列实际搜索字符串以提高比较效率。
-
Google 的“概率 top-k 查询”,应该让你走上正轨