【发布时间】:2015-09-09 13:07:58
【问题描述】:
假设我们有1000 项目和一个地方,可以一次向访问用户显示这些项目中的任何十个。我们可以捕获点击率和一起显示的项目。
- 我们如何才能以最佳方式从这些项目中获得最流行的项目(比如
10)? - 我们如何才能不断更新流行度并展示最佳的
10商品?
编辑:我正在寻找不同的方法而不是实现。
【问题讨论】:
-
维护一个
max heap。它应该可以工作。 -
您能详细说明一下吗?对不起,无知。
-
哪个操作发生的频率更高?重新排序还是 view-top-10?如果视图操作占主导地位,您希望按排序顺序维护项目(例如 BST)。如果重新排序占主导地位,您可能愿意在 top-10 操作上产生更多开销,以换取更便宜的重新排序操作(查看不同的最大堆实现)。
标签: algorithm e-commerce recommendation-engine