数据结构 二:表(list)、栈(stack)、队列(Queue)

时间:2022-08-30 17:39:24

一、表(list)

概念:形如A0,A1,A2,…,An-1的一般表,表大小n,大小为0的特殊的表位空表(empty list)。如果元素Ai前有元素Ai-1,则Ai-1为Ai的前驱,Ai为Ai-1的后继。

1.1线性表的顺序存储结构

用一段地址连续的存储单元依次存储线性表的数组元素
数据结构 二:表(list)、栈(stack)、队列(Queue)
图2.1

1.2线性表的链式存储结构

链表由一系列节点组成,这些节点不必在内存中相连。

1.2.1单链表

数据结构 二:表(list)、栈(stack)、队列(Queue)
图2.2

1.2.2双向链表:

数据结构 二:表(list)、栈(stack)、队列(Queue)
图2.3

二、栈(stack)

栈(stack)是仅在表尾进行插入和删除操作的线性表。栈又称为后进后出(Last In First Out)的线性表,简称LIFO结构。
数据结构 二:表(list)、栈(stack)、队列(Queue)
图2.4

三、队列(Queue)

队列(Queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。
数据结构 二:表(list)、栈(stack)、队列(Queue)
图2.5

循环队列:头尾相接的顺序存储结构称为循环队列。
数据结构 二:表(list)、栈(stack)、队列(Queue)
图2.6

队列的链式存储结构

数据结构 二:表(list)、栈(stack)、队列(Queue)