郁闷的出纳员 【问题描述】 OIER公司是一家大型专业化软件公司,有着数以万计的员工。作为一名出纳员,我的任务之一便是统计每位员工的工资。这本来是一份不错的工作,但是令人郁闷的是,我们的老板反复无常,经常调整员工的工资。如果他心情好,就可能把每位员工的工资加上一个相同的量。反之,如果心情不好,就可能 ...
分类:
其他好文 时间:
2016-05-29 18:31:24
阅读次数:
139
这周事情比较多,原本计划每周写两篇文章的看来是完不成了,今天为大家带来有序集合zset的源码分析。zset的源码主要涉及redis.h和t_zset.c两个文件,我们先来介绍一下zset底层用到的skiplist跳跃表在Redis中的实现,然后重点讲讲zset的存储结构和范围操作的实现。...
分类:
其他好文 时间:
2016-04-29 18:57:18
阅读次数:
282
这周事情比较多,原本计划每周写两篇文章的看来是完不成了,今天为大家带来有序集合zset的源码分析。zset的源码主要涉及redis.h和t_zset.c两个文件,我们先来介绍一下zset底层用到的skiplist跳跃表在Redis中的实现,然后重点讲讲zset的存储结构和范围操作的实现。...
分类:
其他好文 时间:
2016-04-26 21:06:05
阅读次数:
223
skip list的原理Java中的LinkedList是一种常见的链表结构,这种结构支持O(1)的随机插入及随机删除, 但它的查找复杂度比较糟糕,为O(n)。假如我们有一个有序链表如下,如果我们想找到值为59的节点,需要查找7次。怎么提高查询效率呢?通常的做法是使用二分法,但LinkedList的...
分类:
编程语言 时间:
2016-01-03 19:39:06
阅读次数:
363
SkipList在各种开源引擎中用处普遍,例如redis的sortedset容器、luence里面的索引字典等均用到了skiplist。 1.SkipList 在数据结构里面,我们知道有两种基本数据存储结构:数组和链表。它们均有其各自的特点,数组(特别是有序数组),可以进行快速查询,但不便于删...
分类:
其他好文 时间:
2015-12-07 00:32:23
阅读次数:
187
好几天没把笔记整理上来了,一个是这几天在忙着一些投标以及项目论文的事情,哈哈,还有么 就是画图也是比较耗费我时间的,如果有好的画图建议或者工具,麻烦推荐一下,谢谢。废话不多说,直接进入今天的两个主题...
分类:
其他好文 时间:
2015-09-11 00:16:50
阅读次数:
285
题目:查找字符串txt中是否有某个子串pat解决方案:从右到左地扫描pat, 并启发式地处理不匹配的字符步骤1:构建一个跳跃表字母表中每个字符在pat中出现的最右位置,该值提示了如果该字符在文本中且在查找时造成一次匹配失败,应该向右跳跃多远。要将right[]数组初始化,所有元素为-1,然后对于0到...
分类:
其他好文 时间:
2015-08-14 21:18:37
阅读次数:
167
ACM 所有算法
数据结构
栈,队列,链表
哈希表,哈希数组
堆,优先队列
双端队列
可并堆
左偏堆
二叉查找树
Treap
伸展树
并查集
集合计数问题
二分图的识别
平衡二叉树
二叉排序树
线段树
一维线段树
二维线段树
树状数组
一维树状数组
N维树状数组
字典树
后缀数组,后缀树
块状链表
哈夫曼树
桶,跳跃表...
分类:
编程语言 时间:
2015-08-11 16:13:16
阅读次数:
357
跳跃表基础——POJ 3481 Double Queue...
分类:
其他好文 时间:
2015-08-02 18:17:03
阅读次数:
136
举个例子,楼主逛完街要回张江玉兰香苑,如果从人民广场做公交车回去,要经历非常多站: