咨询关于快速排序取排名的问题
最近做游戏服服务端,新增一个排名的需求,需要显示经验值前100名玩家,同时也需要显示自己的排名。
我分析了一下,其实是三个问题:
1、排序:服务启动的时候,从mysql读入到内存,如何根据经验值快速排序。玩家规模在10万到100万之间。经验值是一个uint32类型数据。
2、插入:在经验值改变后,如果更新这个排序。
3、查找:根据玩家的经验值,找到自己的排名。
这三个问题,如果不考虑效率问题,我自己可以解决。
这里想请教一下,有没有最优或者近似最优的算法,用于解决我的问题,谢谢!!