我正在尝试为我的产品数据库获得一个不错的排序算法。用户可以使用从 0 到 5 的分数为他们的产品投票(0.5 分数也可以像 2.5 一样)。我的表结构目前如下所示:
[ProductID] [Title] ... [NumberOfVotes] [TotalPoints] [FinalScore]
每当用户投票时,我都会使用一个非常简单的公式来计算最终得分,例如 (TotalPoints / NumberOfVotes) = FinalScore。
然后我根据 FinalScore 和 NumberOfVotes 对表格进行排序。
虽然这可行,但并不完全公平,因为只有 1 票 5 星的产品很容易进入最高排名。
我不太擅长统计或算法来获得公平的产品排名。我正在寻找一个相对容易实现的公式,它比我现在使用的方法更公平。
如何才能做到这一点?