投票加权算法

Jan*_*anL 2 php theory algorithm statistics

我正在开发类似于Digg的Web应用程序,我需要一种算法,用于按人气来订购帖子.例如:在第一页上,我想拥有今天最受欢迎的帖子,而且很少有前几天获得足够的选票.我的db目前看起来像这样:

Table | fields
Posts | id | ... | time
Feedback | id | userid | time | upvote
Run Code Online (Sandbox Code Playgroud)

upvote字段是bool.如果是肯定的,则意味着用户点击了向上投票按钮.

我的表可以修改,因为它们是空的.

任何帮助将不胜感激

小智 5

如果我理解正确,你希望投票的价值与其年龄成反比.(投票越早,对人气指数的评价就越小.)

实现这一目标的一种简单方法是将投票转换为人气单位(PU),而不仅仅是简单的投票,而是PU.PU的构建可以简单到使其等于1 /(投票的年龄,以天或小时为单位).一天的投票价值1 PU,而2天的投票价值一半.