作者小头像 Lv.3
更多个人资料
280 成长值
2 关注
2 粉丝
+ 关注 私信

个人介绍

超过20年一线产品研发和技术管理的实力程序员

感兴趣或擅长的领域

大数据、数据库、编程语言、云计算、微服务架构
个人勋章
TA还没获得勋章~
成长雷达
280
0
0
0
0

个人资料

个人介绍

超过20年一线产品研发和技术管理的实力程序员

感兴趣或擅长的领域

大数据、数据库、编程语言、云计算、微服务架构

达成规则

以上满足项可达成此勋章

  • 博客
  • 关注
  • 粉丝
  • 论坛
全部时间
全部时间
最近三天
最近一周
最近一月
  • 全部
  • 暂无专栏分类
手撕环形队列系列三:多生产者并行写入
本文是手撕环形队列系列的第三篇,之前的文章链接如下:《手撕环形队列》《手撕环形队列系列二:无锁实现高并发》之前系列文章介绍的环形队列,已经能够支持多生产者和多消费者并发操作,数据操作模式为:生产者准备好数据,然后push()方法放入环形队列中;消费者准备好接收的缓冲区,然后调用pop()方法将数据写入接收缓冲区中。这种模式下,生产者准备数据过程中,需要分配内存。把数据写入环形队列后,这个内存...
C语言 多线程 数据结构
作者小头像 实力程序员 2021-08-04 09:21:13
8368
0
0
2021-08-04 09:21:13
999+
0
0
手撕环形队列系列二:无锁实现高并发
本文是手撕环形队列系列的第二篇,之前的文章链接如下:《手撕环形队列》前面文章介绍的是一个比较基本的环形队列,能够在多线程中使用,但有一个前提:任意时刻,生产者和消费者最多都只能有一个。也就是说,如果有多个生产者要并发向队列中写入,需要在外部进行加锁或其它方式的并发控制,保证任意时刻最多只有一个生产者真正向环形队列进行写入。同样的,多个消费者要从队列中读取进行消费,也需要在外部进行加锁或其它方...
任务调度 多线程
作者小头像 实力程序员 2021-07-30 16:20:10
8517
0
0
2021-07-30 16:20:10
999+
0
0
手撕环形队列
环形队列,是一种非常高效的数据结构,在操作系统、数据库、中间件和各种应用系统中大量使用。今天咱们就来盘它。下面是一个环形队列的示意图:环形队列,有两个指针:头指针和尾指针。在队尾写入,移动尾指针;从队列头部读取,移动头指针。环形队列,是一种特殊的队列。因此具有队列的显著特征:先进先出。其特殊性在于"环形", 内存空间可以不断重复使用,无需频繁分配和释放内存。并且,可以非常容易实现无锁的数据结...
C语言 数据结构
作者小头像 实力程序员 2021-07-29 11:35:33
5959
0
0
2021-07-29 11:35:33
999+
0
0
手写基数排序算法
基数排序(Radix sort)是一种非比较型整数排序算法,其基本思想为:一个待排序整数序列,将其中每个整数看成由不同位构成(比如,个位十位百位千位...)。可以先按个位的数值,将这些数分配到0~9的10个桶中,然后再按从0到9的顺序把这些数从10个桶中收集回来,这时这些数就已经按照个位排好序了。然后再按照10位上的数值,把这些数分配到10个桶中,分配完毕后再次收集回来,这时这些数就已经按照...
C语言 数据结构
作者小头像 实力程序员 2021-07-28 12:45:00
6599
0
0
2021-07-28 12:45:00
999+
0
0
手写计数排序算法
计数排序算法的思想为:待排序的数列中,先找出最小值min和最大值max,形成一个值区间[min, max]。然后建立一个存储空间,存储空间中的每个位置,对应值区间[min, max] 中的一个值,形成一对一的关系。每个位置上,存储这个值出现的次数,​叫做计数。初始计数值都为0。然后遍历待排序的数列,对每个值,将这个值对应的存储空间上​对应位置的计数值加一。遍历完成后,存储空间上每个位置对应的...
C语言
作者小头像 实力程序员 2021-07-27 09:34:03
7449
0
0
2021-07-27 09:34:03
999+
0
0
手写桶排序算法
桶排序算法的思想是: 把待排序数据,按照一定的规则,分配到不同的桶中,使得桶与桶之间形成有序的关系。然后每个桶内再单独排序,这样整个数列就全局有序了。
C语言 数据结构
作者小头像 实力程序员 2021-07-26 11:30:27
7959
0
0
2021-07-26 11:30:27
999+
0
0
手写堆排序算法
堆排序算法,是通过堆这种数据结构来实现排序。 堆,其实就是二叉树。由于排序有从小到大、从大到小两种排序方式,对应的堆也分为最小堆和最大堆。
C语言 二叉树 数据结构
作者小头像 实力程序员 2021-07-26 11:16:17
8333
0
0
2021-07-26 11:16:17
999+
0
0
手写归并排序算法
归并排序算法,是基于分而治之的思想,核心思路为:要对一个数组进行归并排序,则先把这个数组从中间切开,变成2个子数组。然后对每个子数组进行归并排序,最后,2个排好序的子数组再合并成一个有序的数组,这样整个数组的排序就完成了。而对每个子数组进行归并排序,又使用了上述的算法过程,因此是个递归调用。当子数组只有一个元素时,归并排序函数直接返回。因此,归并排序算法的过程,包括:二分法,切分成2个子数组...
数据结构
作者小头像 实力程序员 2021-07-21 21:02:48
6354
0
0
2021-07-21 21:02:48
999+
0
0
手写希尔排序算法
昨天给大家介绍了插入排序算法,今天介绍的希尔排序算法,其实是插入排序算法的更高效改进版。该算法因D.L.Shell于1959年提出而得名。希尔排序是基于插入排序的以下两点性质而提出改进方法的:插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率;但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位;希尔排序的基本思想是:先将整个待排序的记录序列分割成为若干子序列...
C语言
作者小头像 实力程序员 2021-07-20 14:10:56
7624
0
0
2021-07-20 14:10:56
999+
0
0
手写插入排序算法
今天给大家介绍插入排序算法,并且给出源码实现。插入排序算法的思想是,对于一个包含N个未排序元素的数组,我们可以从位置1开始,通过比较元素1和元素0,把元素1插入到元素0的前面或者后面,实现这两个元素的有序排列。然后再取元素2,这个元素前面的序列都已经是有序的了,因此只要找到元素2在前面序列中的位置,进行插入,那么元素0至元素2就都排好序了。再取元素3,向前面有序序列进行插入,依次进行,一直到...
C语言 数据结构
作者小头像 实力程序员 2021-07-19 08:36:32
7448
0
0
2021-07-19 08:36:32
999+
0
0
总条数:28
10
10
20
50
100
  • 1
  • 2
  • 3

上滑加载中

https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=0&rsv_idx=1&tn=baidu&wd=sed%20%E6%9B%BF%E6%8D%A2%E5%AD%97%E7%AC%A6%E4%B8%B2&rsv_pq=c7db61a600035dc5&rsv_t=5e19yEsbV9N5fIvdlGRU
作者小头像
作者小头像
快速交付
+ 关注