- 博客(9)
- 资源 (52)
- 收藏
- 关注
原创 rapidjson库在windows,linux中的下载,安装,使用示例
本示例操作演示:1.Value的新建及key的访问,修改2. 从字符串中解析json3. 从文件中读取解析json4.把json写入到文件简介:RapidJSON 是一个 C++ 的 JSON 解析器及生成器。它的灵感来自RapidXml。RapidJSON 小而全。它同时支持 SAX 和 DOM 风格的 API。SAX 解析器只有约 500 行代码。 Rapid...
2019-05-31 18:47:20 8808
转载 清晰理解红黑树的演变---红黑的含义
前言红黑树,对不少人来说是个比较头疼的名字,在网上搜资料也很少有讲清楚其演变来源的,多数一上来就给你来五条定义,红啊黑啊与根节点距离相等之类的,然后就开始进行旋转、插入、删除这些操作。一通操作下来,连红色和黑色怎么来的,是什么含义,有什么作用都云里雾里的,能搞清楚就怪了。本文介绍红黑树,暂时不涉及任何代码,只是帮助你理解红黑树的演变来源,树结构中红黑色具体含义,保证...
2019-05-27 20:01:33 2637 7
原创 C++原子操作 atomic的使用及效率
1. 概述原子操作,它表示在多个线程访问同一个全局资源的时候,能够确保所有其他线程都不在同一时间访问该资源。也就是确保了在同一时刻只有一个线程对这个资源进行访问。这有点类似互斥对象对共享资源的访问的保护,但是原子操作更加接近底层,因而效率更高。在以往的C++标准中并没有对原子操作进行规定,我们往往是使用汇编语言,或者是借助第三方的线程库,例如intel的pthread来实现。在新标准C++11...
2019-05-27 16:41:14 16307 5
转载 原子操作的实现原理
原子(atomic)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意为“不可被中断的一个或一系列操作”。在多处理器上实现原子操作就变得有点复杂。让我们一起来聊一聊在Intel处理器和Java里是如何实现原子操作的。1.术语定义在了解原子操作的实现原理前,先要了解一下相关的术语,如表2-7所示。2.处理器如何实现原子操作32位IA-32处理器使用基...
2019-05-22 20:33:40 1808
转载 go 原子操作 atomic的使用
go语言提供的原子操作都是非侵入式的,它们由标准库代码包sync/atomic中的众多函数代表。 我们调用sync/atomic中的几个函数可以对几种简单的类型进行原子操作。这些类型包括int32,int64,uint32,uint64,uintptr,unsafe.Pointer,共6个。这些函数的原子操作共有5种:增或减,比较并交换、载入、存储和交换它们提供了不同的功能,切使用的场景也...
2019-05-22 19:48:29 6392
原创 树的宽度 递归法和非递归法
递归法思路:建立一个数组,count[1]表第1层节点总数,即宽度,count[2]表第二层节点总数,依次类推用先序遍历二叉树,每深入一层就把该层的节点个数加1,最大节点数即树的宽度代码如下:// Width_No_Recursive 非递归法求树的宽度// 思路:借鉴层序遍历的思想,一层层的遍历,所有层中最大宽度,即树的宽度int Width_No_Recursive(Tre...
2019-05-10 22:23:10 1937
原创 树的高度 递归法和非递归法
递归法思路:树的高度即节点子树的高度+1(节点子树的高度即左子树高度,右子树高度的最大值)代码如下:// Height_Recursive 递归法求树的高度int Height_Recursive(TreeNode* pTree) { if (pTree == NULL) { return 0; } // 分别求出左子树,右子树的高...
2019-05-10 12:01:58 1659 4
原创 go语言的map以及红黑树的map
结论:1. go语言自带的map是基于hash表实现的2. c++语言中map是基于红黑树实现的3. go语言很多第三方库中提供了基于红黑树map的实现这里我们推荐的是由Social Explorer团队开源的gods框架,简称"上帝",其实是GoDS(Go Data Structures),是数据结构与算法相关的框架官网:https://www.socialexplor...
2019-05-06 23:35:09 3167
转载 go语言的rune类型
在学习golang基础的时候,发现有个叫rune的的数据类型,当时不理解这个类型的意义。查询,官方的解释如下:// rune is an alias for int32 and is equivalent to int32 in all ways. It is// used, by convention, to distinguish character values from int...
2019-05-06 22:02:39 6195 1
c++实现对象池测试.rar
2019-11-21
TimerAxis.rar
2019-11-17
hiredis_example.rar
2019-11-15
redis-x64-3.2.100.rar
2019-08-12
编译多个可执行程序,需链接动态库静态库,且需先编译库,并且库与库之间存在依赖关系的makefile
2019-03-06
需链接动态库静态库,且先需编译库的makefile
2019-03-04
luabind_example_windows下代码示例.rar
2018-04-22
luabind-0.9.1_linux下示例.zip
2017-11-27
luabind_example_windows下示例.rar
2017-11-26
luabind-0.9.1 动态库 静态库
2017-11-08
luabind-0.9.1_VS2008_编译出的库文件
2017-11-05
c++实现的无锁环形队列
2021-11-05
zzqserver20191230.rar
2019-12-30
mineclearserver.rar
2019-12-30
redis-4.1.3.gem
2019-12-25
redis-4.0.14.tar
2019-12-25
自走棋_example.rar
2019-11-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人