1、线性表若是满足除了第一个和最后一个元素外每个数据元素只有一个前去数据元素和后继数据元素第一个数据元素没有前驱数据元素最后一个数据元素没有后继数据元素这个样的结构就叫做线性结构2、顺序表顺序表是以数组的形式保存的线性表。也就是⼀组地址连续的存储单元依次存储数据元素的线性结构。在数组中我们会先申请⼀段连续的内存空间然后把数组以此存⼊内存当中中间没有⼀点空隙。这就是⼀种顺序表存储数据的⽅式。基本操作增、删、改、查和插优点通过数据下标访问因此查询元素很快缺点插入和删除元素需大量操作顺序表长度是确定的不够灵活有时会浪费大量的空间效率顺序表对于插⼊、删除⼀个元素的时间复杂度是O(n)顺序表读取⼀个元素的时间复杂度为O(1。最⼤的优点是空间利⽤率⾼。最⼤的缺点是⼤⼩固定。3、链表链表结构在物理上不连续在逻辑上连续。⼤⼩不固定。链式存储结构是基于指针实现的。我们把⼀个数据元素和⼀个指针称之为节点。数据域存数据元素的区域指针域存储直接后继位置的区域。分为单向链表单向循环链表双向链表双向循环链表。单向链表链表的每个节点只包含⼀个指针域、叫做单链表单向循环链表链表的每个节点只包含一个指针域尾节点指针指向头节点形成闭环叫做单向循环链表。双向链表链表的每个节点包含两个指针域一个指向前驱节点、一个指向后继节点叫做双向链表。双向循环链表链表的每个节点包含两个指针域头节点前驱指向尾节点、尾节点后继指向头节点形成闭环叫做双向循环链表。4、栈特点先进后出5、队列特点先进先出只允许在表的前端进⾏删除操作在表的后端进⾏插⼊操作应用解决主机与外部设备速度不匹配多⽤户引起的资源竞争问题5.1、单向队列判断队空的条件就变成了 rear front。判断队满的条件是rear 1%maxSize front。front队头指针指向队列第一个有效元素rear队尾指针指向队列最后一个有效元素的下一个空位5.2、双端队列5.3、延迟队列延迟队列相比于普通队列最⼤的区别就是在属性上面普通的队列是先进先出按⼊队顺序处理。延时队列中的元素在⼊队时会制定⼀个延迟时间表示其希望能够在经过该指定时间后处理。5.4、阻塞队列阻塞队列本质是线程安全的队列在普通先进先出队列基础上增加了阻塞等待特性主要用于多线程生产者 - 消费者模型。入队 put往队列放元素时如果队列已满执行 put 的线程会被阻塞休眠直到队列有空位再唤醒继续存放出队 take从队列取元素时如果队列为空执行 take 的线程会阻塞休眠直到队列有新元素入队再唤醒取值。