我正在尝试找出一种计算排名的方法。现在它只需要每个条目的赢/输的比率,所以例如100 次中,有 99 次获胜,则胜率达到 99%。但如果一个参赛作品在 1 票中赢得 1 票,那么它的获胜排名将是 100%,但绝对不能高于赢得 99 次的参赛作品。更好的方法是什么?

有帮助吗?

解决方案

根据您想要使其复杂程度,国际象棋使用的 Elo 系统(或类似的东西)可能就是您想要的: http://en.wikipedia.org/wiki/Elo_ rating_system

例如,即使一个人赢得了 1/1 场比赛,他的评分也会远远低于那些在与强敌的比赛中赢得/输掉数百场比赛的人。

其他提示

尝试是这样的:

votes = wins + losses
score = votes * ( wins / votes )

这样一来,一些与50%的胜利,但万票仍然是未来的东西用100场%的胜利,但只有一票表决权。

您可以根据年龄(以天为单位在这个例子中)的额外的重量增加,也像

if age < 5:
    score = score + ((highest real score on site) * ((5 - age) / 5)

这将会把全新的条目就在第一页的顶部,然后他们会慢慢往下移动在接下来的5天课程(我假设年龄是一个小数,而不仅仅是一个整数)。后5天都在涨,它们将被放置在仅依靠的伪码前一位的得分基于该列表。

您总是可以使用一个点系统,而不是赢/输比率。胜出的总是给点,然后你可以玩的或者移除点输球,一点都没有授予点丢失,或失去奖励少点。这一切都取决于你到底如何想的人进行排名。例如,您可能想给2分赢得1点丢失,如果你想青睐谁参加过那些谁不(这听起来有点像你是在你玩100个游戏VS的人的例子讲人1场比赛)。非霍奇金淋巴瘤用来排名类似的技术(2点为胜利,1点的超时损失,0点为常规损失)。这可能给你一些更大的灵活性。

如果我理解正确的问题,然后谁得到更多的选票具有较高的等级。

将是有意义的多级添加到获奖作品如果失去进入原本有一个更高的等级,例如强得多竞争对手?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top