algorithm - 如何对我的 Web 应用程序的帖子进行排名?
问题描述
我正在设置一个 Web 应用程序,并希望对帖子进行排名,以便每个帖子在某个时间点都有活动。(即,尽管他们的观点或活动,他们仍会显示在第一页或热门帖子中)。
我已经知道 Reddit 帖子排名方法是如何工作的,我猜堆栈溢出使用类似的算法来对他们的帖子进行排名。
我注意到很多事情是,有些帖子是新的,并且在最初的几个小时内没有太多活动,它会远远低于帖子列表(被较新的帖子取代)。当然,这是合理的。
我的应用程序的基本场景是用户发布他们想要完成的任务,然后有兴趣的人会申请。发布的用户将筛选候选人,然后最终雇用。在这里,一旦用户进入候选名单过程,排在首位就不再有用了。我希望它们被发布的其他任务(尚未收到申请)+新帖子所取代。
是否有任何算法可以围绕这个模型工作?我的问题可能并不简单,如果是这样,请随时提出有关此的问题。谢谢你
解决方案
最简单的解决方案是找到您关心的属性,例如:Recency
,Popularity
并将分数定义为这些属性的线性函数,您需要在其中确定weights
w
有意义的属性:
score = wR * Recency + wP * Popularity
另一方面,如果你想变得更复杂,有各种各样的排名算法。
推荐阅读
- ruby-on-rails - 为什么 rails html_safe 方法会改变我的 html 结构?
- javascript - 虚拟主机:SSD 与 HDD 动画速度
- mysql - 如何找到每个部门的第 5 高薪水?
- javascript - PDF.js 异步模式不会获得 .PDF 的总页数,除非在代码上设置了警报
- mapbox - 我想从 URL 解析 kml 提要以将数据添加到 Mapbox
- python - 如何在使用+1迭代的基本python中优化字符串比较?
- c# - EF6 with Entity Framework Plus:将对象从内存缓存添加到实体集合然后保存
- javascript - 按钮元素没有响应
- c# - 将 IdentityServer4 与 WebApplicationFactory 集成测试一起使用
- javascript - registerJS 中的数组到字符串的转换 - Yii2