排行榜如何处理分数并列(tie)?为什么可以用时间戳作为 tie-breaker?
How do you handle ties on a leaderboard, and why use timestamps as a tie-breaker?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: System Design
标签: tie-breaker, timestamp, ranking
参考答案摘要
答案 并列的本质是多个玩家分数相同,需要一个稳定的二级排序规则,避免排名“抖动”。常见做法: 时间戳优先 :分数相同则按更新时间较早者胜出(older timestamp wins),体现“先到先得”。 实现方式:把时间戳存在 Redis Hash 或 DB;排序时通过 Lua 脚本、组合 score(如 score 的小数位编码时间)、或读出候选集合后在应用层二次排序。 时间戳作为 tie-br...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。