[TOC] 一、容器 1.vector数组 主要内容: ①定义方式 ②输出单个元素 ③遍历输出 主要函数: ①获取大小v.size() ②获取首指针,获取尾指针v.begin()/v.end() ...
分类:
编程语言 时间:
2019-11-16 19:55:32
阅读次数:
75
ConcurrentLinkedQueue ConcurrentLinkedQueue内部的队列使用带头节点的单向链表实现,并且维持头尾两个指针,头指针出队、尾指针入队。该队列的出队入队操作都是线程安全的。 保证安全的方式 对于头尾指针均使用volatile关键字修饰从而保证可见性,对于头尾指针的修 ...
分类:
编程语言 时间:
2019-10-07 11:19:57
阅读次数:
78
循环队列 当用顺序结构实现队列时如图所示:可以用一个数组代表队列空间,队列为空时 rear和front都是指向数组第一个元素。 从队尾插入的时候可以先将队尾指向的数组赋值,再将队尾指针+1 从对头弹出元素则是先给取出元素值再将队头指针+1 但如果这么做,就会遇到一个棘手的问题,那就是队头弹出和队尾插 ...
分类:
其他好文 时间:
2019-10-06 13:25:12
阅读次数:
89
void merge(LNode *A,LNode *B,LNode *&C) //此处C指针为引用型 { LNode *p=A->next; LNode *q=B->next; LNode *r; //r是尾指针 C=A; C->next=NULL; r=C; free(B); //释放B的头结点 ...
分类:
编程语言 时间:
2019-09-20 21:11:12
阅读次数:
68
链表 在Redis的早期版本中,存储list列表结构时,如果元素少则使用压缩列表ziplist,否则使用双向链表linkedlist 对于链表,有以下特性: 双端:节点带有prev和next指针以获取前置、后置节点 无环:表头的prev和表尾的tail指向NULL 带表头表尾指针:获取表头表尾节点复 ...
分类:
其他好文 时间:
2019-09-01 23:49:33
阅读次数:
121
https://leetcode-cn.com/problems/two-sum-ii-input-array-is-sorted/ 求数组中加起来恰好等于target的两个数的位置。 双指针问题,分别从头和尾遍历数组,如果加起来和大于target,则尾指针左移,如果加起来和小于target,则头指 ...
分类:
编程语言 时间:
2019-08-29 00:11:59
阅读次数:
140
lc125 Valid Palindrome 法一: 双指针 首尾指针向中间收缩,比较两者指向元素是否相同 不相同就返回false 若遇到非数字非字母的字符,跳过,这里可以手写if判断,也可以用Character内置函数Character.isLetterOrDigit() 还有一点需要注意,同一个 ...
分类:
其他好文 时间:
2019-06-14 14:31:14
阅读次数:
85
1 #include 2 #include 3 #define MAXSIZE 10 4 5 typedef int ElemType; 6 //队列结构体 7 typedef struct{ 8 ElemType data[MAXSIZE]; 9 int front,rear;//队头与队尾指针 ... ...
分类:
其他好文 时间:
2019-06-10 19:58:15
阅读次数:
163
反转字符串: 作为面试题出现频率最高的手写代码题,有必要做一下总结。 【形式1】: 题目: 分析:很容易的题目。解决方法有2种:可以递归输出、也可以“头尾”指针向中间移动,边移动变交换。 代码实现:(vs2017下测试通过) 【形式2】: 题目: 分析过程:如图所示, 代码实现:(vs2017下测试 ...
分类:
其他好文 时间:
2019-06-07 00:34:55
阅读次数:
90
循环队列 一、顺序存储 分析: 1、定义结构:数据Data[];头尾结点Front、Rear;容量MaxSize 2、创建:为队列结构和数据申请空间,数据通过结构中的指针访问;头尾指针归零 3、插入删除:判断空满;尾入头出 4、注意是循环队列,空满判断条件要取余 ...
分类:
其他好文 时间:
2019-05-04 00:25:11
阅读次数:
109