美文网首页
天梯匹配算法优化

天梯匹配算法优化

作者: 小星星幼儿园 | 来源:发表于2017-07-20 12:39 被阅读0次

匹配规则相对比较简单,匹配只基于竞技场积分,有一个动态扩大的匹配区间。初始的简单粗暴的核心匹配算法是:

for playerA in players
    for playerB in players
        if playerA match playerB then
            匹配成功;
        end
    end
end

但是这个算法实在是效率不好,是O(n^2)的复杂度。

后来又实现一个基于hash的匹配算法,将分数段每10分分为一段,作为hash表上一个key。玩家根据自己当前的匹配状态把自己插入到一个或多个key下。同个key下的玩家可直接匹配。

hash.png

使用初始算法,1万人(50万同时在线以上)同时匹配耗时0.5s(单核)
优化后的算法,100万(5000万同时在线)同时匹配耗时0.3s(单核)

相关文章

  • 天梯匹配算法优化

    匹配规则相对比较简单,匹配只基于竞技场积分,有一个动态扩大的匹配区间。初始的简单粗暴的核心匹配算法是: 但是这个算...

  • 解析类Dota游戏天梯匹配系统的实现方式

    什么是类Dota游戏的天梯匹配 玩过Dota或者LOL的人都知道 . 天梯匹配系统是一套将 玩家的实力 量化,并进...

  • KmpUtils

    以前对算法不是很经常用,趁着项目中有个关于字符串匹配的问题;为优化之前的代码,写几个模式匹配的类

  • AC自动机及多模式匹配

    在接触AC自动机之前,只仅仅掌握单模式匹配的算法:比如KMP、BMH等算法;经过优化后,KMP和BMH都具有线性时...

  • KMP 算法

    KMP 算法 1. 暴力匹配算法 在分析KMP算法前, 先看看暴力匹配算法是如何工作的.暴力匹配算法的基本思想是:...

  • sklearn学习笔记——正交匹配追踪算法OMP

    正交匹配追踪算法OMP(Orthogonal Matching Pursuit) 1、MP算法(匹配追踪算法) 作...

  • 字符串匹配算法

    以下为学习 《数据结构与算法之美 -- 字符串匹配》 的记录。 BF算法 即暴力匹配算法,循环遍历匹配。 RK算法...

  • 字符串匹配

    indexOf 底层就是使用字符串匹配算法 字符串匹配算法很多 BF( Brute Force)算法 暴力匹配算...

  • 串的模式匹配算法

    KMP算法 算法匹配

  • 优化方法总结

    优化算法框架 神经网络模型中有多种优化算法,优化算法的作用用来优化更新参数。对于优化算法而言,主要的框架如下。参数...

网友评论

      本文标题:天梯匹配算法优化

      本文链接:https://www.haomeiwen.com/subject/rbvdkxtx.html