1. 临界区加排他锁(Go sync.Mutex.Lock()) 如果并发量大,锁竞争激烈,会导致性能开销大 2. 读多写少场景,使用读写锁(Go sync.Mutex.RLock()) 支持并发读,但写锁会block住读和写,读多场景性能会好很多 3. 对计数使用CAS操作(Go sync.ato ...
分类:
其他好文 时间:
2019-09-14 16:16:41
阅读次数:
108
见:https://blog.csdn.net/dormousenone/article/details/75208903 ...
分类:
其他好文 时间:
2019-09-13 19:47:27
阅读次数:
132
题意:给你一个长度为n的字符串和m组询问,每组询问给出l,r,k,求s[l,r]的第k次出现的左端点。 解法一: 求出后缀数组,按照排名建主席树,对于每组询问二分或倍增找出主席树上所对应的的左右端点,求第k大的下标即可。 解法二: 建立后缀自动机,对后缀树(fail树)作线段树合并可得到每个结点包含 ...
分类:
编程语言 时间:
2019-09-12 23:37:36
阅读次数:
144
因为限制了编号,所以直接逆序就是自底而上,然后就是树形DP合并节点了,然后用可并堆贪心的删除节点,每次更新节点答案 ...
函数解析 1、为什么要用函数 想知道为什么要使用函数,那我们先要知道什么是函数? 函数是一段可以重复使用的代码,用来独立地完成某个功能,也可以用来接收用户传递的数据。美国人将函数称为“Function”,Function除了有“函数”的意思,还有“功能”的意思,从本质上看,程序是由函数组成的,也可以 ...
分类:
其他好文 时间:
2019-09-11 13:44:52
阅读次数:
84
1.为什么要用函数 a)函数能够增加程序的可读性 b)提高开发的效率 c)可以重复使用和在各种适用情况下使用 这段代码适用于任何想要交换数字的时候,节省了时间。 2.为什么要用函数重载 a)解决了命名冲突问题,增加了可读性. b)减少了用户的复杂性 函数重载可以优先选出想要应用的函数 3.什么是值传 ...
分类:
其他好文 时间:
2019-09-10 18:06:16
阅读次数:
95
一、玩家表(ml_player) 二、物品表(ml_goods) 本节为数据表设计,游戏构建请查看下一节。 ...
分类:
其他好文 时间:
2019-09-10 01:04:24
阅读次数:
118
泛型与常见的数据结构和集合 集合&迭代器 集合体系结构图 由于不同的数据结构(数据的组织,存储方式),所以java为我们提供了不同的集合 不同的集合他们的功能都是相似的,不断向上提取,将共性抽取出来 Collection中的常用功能 collections Collection和Collection ...
分类:
编程语言 时间:
2019-09-09 22:50:01
阅读次数:
106
1.支付宝开放平台添加应用并且签约快捷手机wap支付(应用添加不做详细说明) 2.下载demo,文档中心SDK&Demo, 3.个人中心秘钥管理,查看商户appID,商户私钥,支付宝公钥,商户公钥(填入支付宝应用中,项目里面不需要配置),可以使用支付宝开放平台生成然后配置到项目里面 4.下载好的项目 ...
分类:
移动开发 时间:
2019-09-09 19:40:36
阅读次数:
250