开发者社区 问答 正文

游戏排行榜中的插队排名如何实现?

screenshot
如玩家004打败排名为2的002玩家,排行榜将变成
screenshot
数据结构为Map<排名,玩家ID>

展开
收起
蛮大人123 2016-02-27 19:13:43 2411 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    不使用map或list,不论是ArrayList还是LinkedList,因为ArrayList相当于数组,排名变化需要更新大量的元素,而LinkedList虽然插入删除比较方便,但是因为不能使用二分查找,要查找到变更后的位置需要遍历。比较好的实现方式是使用平衡二叉树,或者直接使用redis中的sortset。

    2019-07-17 18:49:16
    赞同 展开评论
问答地址: