V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
as9567585
V2EX  ›  程序员

帖子排序计算方式,怎么排序才能平衡热门和最新呢?

  •  
  •   as9567585 · 2022-11-29 20:46:45 +08:00 · 1681 次点击
    这是一个创建于 725 天前的主题,其中的信息可能已经有所发展或是发生改变。

    其实就是怎么控制 发布时间 和 回复数量 的权重的问题

    v2ex 是怎么计算的呢?

    10 条回复    2022-12-01 00:41:27 +08:00
    723X
        1
    723X  
       2022-11-29 20:57:31 +08:00
    按最后回复时间吧,有人回复相当于顶帖,另外发布超过 24 小时的帖子即使近期有恢复也不计入。
    如果是新发布的帖子,以发布时间作为最后回复时间在主板块排序。
    jaggle
        2
    jaggle  
       2022-11-29 20:59:34 +08:00 via iPhone
    es script 排序
    strawberryBug
        3
    strawberryBug  
       2022-11-29 21:03:23 +08:00 via Android
    试试 es 自带的 gauss decay function
    as9567585
        4
    as9567585  
    OP
       2022-11-29 23:07:46 +08:00
    @strawberryBug 我研究下
    as9567585
        5
    as9567585  
    OP
       2022-11-29 23:08:34 +08:00
    @723X 这也是个办法~
    hamsterbase
        6
    hamsterbase  
       2022-11-30 00:36:25 +08:00
    关键词 《 Hacker News 的排序算法》

    连代码都有

    http://fjdu.github.io/algorithm/2016/11/29/hacker-news-ranking-algorithm.html
    as9567585
        7
    as9567585  
    OP
       2022-11-30 04:32:48 +08:00
    @hamsterbase 这个不错~
    litchinn
        8
    litchinn  
       2022-11-30 17:10:46 +08:00
    https://www.evanmiller.org/how-not-to-sort-by-average-rating.html
    这个好像是个挺老的了,不过应该够用
    Pipecraft
        9
    Pipecraft  
       2022-11-30 23:35:43 +08:00   ❤️ 1
    可以看看这位博主写的文章《评分和排名算法 (Rating & Ranking Algorithms)
    https://leovan.me/cn/2022/05/rating-and-ranking-algorithms/
    分析了 Hacker News ,Reddit ,Stack Overflow 的排序方法。
    还可以看看 Lobsters 的排序算法。源码链接: https://github.com/lobsters/lobsters/blob/master/app/models/story.rb#L370
    as9567585
        10
    as9567585  
    OP
       2022-12-01 00:41:27 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   919 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:43 · PVG 05:43 · LAX 13:43 · JFK 16:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.