7.1.1 value 对象的通用结构 typedef struct redisObject{ unsigned type:4; unsigned encoding:4; unsigned lru:REDIS_LRU_BITS; int refcount; void *ptr; } robj; ty ...
分类:
其他好文 时间:
2020-04-29 01:04:19
阅读次数:
67
链表 链表是一个以节点存储的有序列表,每个节点包括data域和next域,data域是用来保存值的,next域是保存下一个节点的地址,根据有无头节点,链表可分为带头节点的链表和不带头节点的链表 单链表 不带头节点的单链表 带头节点的单链表 双链表 分析为什么要双链表 1. 单链表每个节点只保存了后继 ...
分类:
其他好文 时间:
2020-04-09 00:30:20
阅读次数:
61
双向链表 上文中详解了单向链表, 本节主要针对双向链表的原理、优缺点以及各个操作进行讲解。 双向链表对于单项链表来说,它支持两个方向,每个结点不止有一个后继指针next指向后面的结点,而且还有一个前驱指针prev指向前面的结点,结合图来看看: 从图中可以看出,双向链表需要额外的两个空间来存储后继结点 ...
分类:
其他好文 时间:
2019-08-17 12:40:03
阅读次数:
95
http://acm.hdu.edu.cn/showproblem.php?pid=6621 每个点维护该点内元素排序后的结果,每次寻味取出所有可能有解的区间 对每个区间二分,得到一个ub,一个lb,然后双向遍历每个指针k轮,每次取出最小的值,然后移动一次指针 第k轮得到的即为答案 复杂度$O(nl ...
分类:
其他好文 时间:
2019-07-31 22:19:53
阅读次数:
116
集合类概述 1.继承树 2.集合和数组 区别如下: 数组可以存储基本数据类型,也可以存储引用类型;而集合只能存储引用类型(比如存储int,它会自动装箱成Integer) 数组长度固定,集合长度可变 3.List和map 相同 都是集合类,都是接口 区别 List存储单列元素,Map存储键值对 Lis ...
分类:
编程语言 时间:
2018-09-29 21:37:16
阅读次数:
240
一、常见的链表 1、单链表(Singly Linked List) 构成:每个节点包含数据(data)和后继节点的地址(next) 2、双向链表 构成:每个节点包含数据(data)、前驱的地址(prev)、后继的地址(next) 优势:删除或添加元素不需要移动数据,可以双向遍历 3、异或链表(XOR ...
分类:
其他好文 时间:
2018-07-27 01:12:57
阅读次数:
177
【题目】 Given an array with n objects colored red, white or blue, sort them so that objects of the same color are adjacent, with the colors in the order ...
分类:
其他好文 时间:
2017-08-06 13:56:02
阅读次数:
118
强连通:在有向图G中,两个顶点间至少存在一条路径,则两个点强连通。 强连通图:在有向图中,每两个顶点都强连通,则有向图G就是一个强连通图。 强连通分量:在非强连通图中的极大强连通子图,就称为强连通分量。 直接根据定义,可以通过双向遍历取交集的方法求强连通分量,但是其复杂度为O(N^2+M)。更好的方 ...
分类:
其他好文 时间:
2017-07-16 11:22:58
阅读次数:
185
一.基础知识 Java集合框架 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。 随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的 ...
分类:
编程语言 时间:
2017-07-08 00:18:13
阅读次数:
277
list - 擅长插入删除的链表 链表对于数组来说就是相反的存在。 数组本身是没有动态增长能力的(程序中也必须又一次开辟内存来实现), 而链表强悍的就是动态增长和删除的能力。 但对于数组强悍的随机訪问能力来说的话,链表却非常弱。 list - 是一个双向链表的实现。 为了提供双向遍历的能力,list ...
分类:
编程语言 时间:
2017-05-25 20:46:04
阅读次数:
175