栈和队列都是常用的数据结构,它们的逻辑结构与线性表相通,只不过操作受某种特殊限制。
1.栈的基本概念
栈(stack)是限定仅在表尾进行插入和删除操作的线性表,其特点是后进先出或先进后出。
2.栈的基本操作
(1)栈的插入操作,叫做进栈,也称压栈,入栈。
(2)栈的删除操作,叫做出栈,也称弹栈。
3.队列的基本概念
队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表,它是一种先进先出(First In First Out)的线性表,简称FIFO。允许插入的一端称为队尾,允许删除的一端称为队头。
4.队列的基本操作
(1)入队:将一个数据元素插入队尾。
(2)出队:读取队头节点数据并删除该节点。
5.循环队列
将队列的头尾相接的顺序存储结构称为循环队列。