今年我参加学生会,负责“歌曲”委员会,我们挑选歌曲。不幸的是,跳舞派对上的孩子们总会讨厌一些愚蠢的歌曲选择。我想今年能够做出不同的改变。上周四,我创建了一个简单的PHP应用程序,以便孩子们可以将歌曲提交到数据库中,提供歌曲名称,艺术家和流派(从下拉列表中选择)。我还实现了类似于Reddit的投票功能。点击点赞按钮,您就点赞了该歌曲,并增加了点赞计数。反之亦然。
无论如何,在数据库中,我有三个信息片段,我认为可以用来评估这些歌曲:点赞数,反对数和时间戳。有一段时间,排名是通过简单地将具有更高“投票”计数的歌曲排在前面来创建的。也就是说,赞成票多,反对票少(赞成票-反对票)将位于列表的顶部。那运作得很好,但到周日,列表上有大约75首歌,最先提交的歌曲仍然位于列表的顶部。
周日,我将排名算法更改为(赞成票数-反对票数)/(当前时间戳-创建时间戳),也就是说,投票数量越高,时间越短,该歌曲就会在列表中排名更高。这样做效果更好,但仍不如我所期望的那样。
现在发生的情况是,一首歌曲被创建并得到1个赞成票数时,它将出现在列表的顶部某个位置。反对票数为负数的歌曲很少被查看,因为孩子们通常不会滚动到列表底部。
我想我可以排序数据,以便较低的歌曲出现在顶部,这样人们就必须看到较低的歌曲。老实说,我从未必须处理过“流行度”算法,所以,您有什么想法吗?
网站位于http://www.songs.taphappysoftware.com- 我不知道是否应该在这里放置它,可能会导致派对上播放一些不受欢迎的歌曲:0
无论如何,在数据库中,我有三个信息片段,我认为可以用来评估这些歌曲:点赞数,反对数和时间戳。有一段时间,排名是通过简单地将具有更高“投票”计数的歌曲排在前面来创建的。也就是说,赞成票多,反对票少(赞成票-反对票)将位于列表的顶部。那运作得很好,但到周日,列表上有大约75首歌,最先提交的歌曲仍然位于列表的顶部。
周日,我将排名算法更改为(赞成票数-反对票数)/(当前时间戳-创建时间戳),也就是说,投票数量越高,时间越短,该歌曲就会在列表中排名更高。这样做效果更好,但仍不如我所期望的那样。
现在发生的情况是,一首歌曲被创建并得到1个赞成票数时,它将出现在列表的顶部某个位置。反对票数为负数的歌曲很少被查看,因为孩子们通常不会滚动到列表底部。
我想我可以排序数据,以便较低的歌曲出现在顶部,这样人们就必须看到较低的歌曲。老实说,我从未必须处理过“流行度”算法,所以,您有什么想法吗?
网站位于http://www.songs.taphappysoftware.com- 我不知道是否应该在这里放置它,可能会导致派对上播放一些不受欢迎的歌曲:0