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

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

 

一.Hacker News的排序算法

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

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

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

 

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

 

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

其中,

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

  T表示距離發(fā)帖的時間(單位為小時),加上2是為了防止最新的帖子導致分母過?。ㄖ赃x擇2,可能是因為從原始文章出現(xiàn)在其他網(wǎng)站,到轉(zhuǎn)貼至Hacker News,平均需要兩個小時)。

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

 

從這個公式來看,決定帖子排名有三個因素:

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

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

 

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

在其他條件不變的情況下,越是新發(fā)表的帖子,排名越高。或者說,一個帖子的排名,會隨著時間不斷下降。

 

第三個因素是因子G。

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

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

 

二.Reddit的排序算法

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

和Hacker News不同,和Reddit允許用戶投反對票,

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

算法如下圖:

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

 

 

1.文章提交時間對排名的影響 

文章提交時間對排名的影響可以總結(jié)為以下幾點:

提交時間對排名影響巨大,越新的文章排名會越高

網(wǎng)友評論