類似基于投票的熱門計(jì)數(shù)算法普遍應(yīng)用在熱門文章,熱門評(píng)論等場(chǎng)景中,

典型的比如網(wǎng)易和今日頭條的評(píng)論區(qū),國(guó)外比如Hacker News和Reddit的主題排序。

 

一.Hacker News的排序算法

Hacker News是一個(gè)主題社區(qū),用戶可以為主題投票,根據(jù)得票數(shù),系統(tǒng)自動(dòng)統(tǒng)計(jì)出熱門文章排行榜。

同時(shí)主題發(fā)表時(shí)間也會(huì)對(duì)排名產(chǎn)生影響,新發(fā)表的主題比舊的主題更容易得到好的排名。

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

 

Hacker News的排名算法是這樣實(shí)現(xiàn)的:

 

(p – 1) / (t + 2)^G

其中,

  P表示帖子的得票數(shù),減去1是為了忽略發(fā)帖人的投票。

  T表示距離發(fā)帖的時(shí)間(單位為小時(shí)),加上2是為了防止最新的帖子導(dǎo)致分母過(guò)?。ㄖ赃x擇2,可能是因?yàn)閺脑嘉恼鲁霈F(xiàn)在其他網(wǎng)站,到轉(zhuǎn)貼至Hacker News,平均需要兩個(gè)小時(shí))。

  G表示"重力因子"(gravityth power),即將帖子排名往下拉的力量,默認(rèn)值為1.8。

 

從這個(gè)公式來(lái)看,決定帖子排名有三個(gè)因素:

第一個(gè)因素是得票數(shù)P。

在其他條件不變的情況下,得票越多,排名越高。

 

第二個(gè)因素是距離發(fā)帖的時(shí)間T。

在其他條件不變的情況下,越是新發(fā)表的帖子,排名越高?;蛘哒f(shuō),一個(gè)帖子的排名,會(huì)隨著時(shí)間不斷下降。

 

第三個(gè)因素是因子G。

它的數(shù)值大小決定了排名隨時(shí)間下降的速度。

G值越大,排名下降得越快,意味著排行榜的更新速度越快。

 

二.Reddit的排序算法

Reddit 是Digg類型網(wǎng)站,國(guó)內(nèi)類似的社區(qū)有花瓣網(wǎng)等。

和Hacker News不同,和Reddit允許用戶投反對(duì)票,

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

算法如下圖:

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

 

 

1.文章提交時(shí)間對(duì)排名的影響 

文章提交時(shí)間對(duì)排名的影響可以總結(jié)為以下幾點(diǎn):

提交時(shí)間對(duì)排名影響巨大,越新的文章排名會(huì)越高