栈
栈(stack)是一种特殊的线性表,是一种只允许在表的一端进行插入或删除操作的线性表。表中允许进行插入、删除操作的一端(表尾)称为栈顶,表的另一端(表头)称为栈底,当栈中没有数据元素时,称之为空栈。栈的重要特点是后进先出(Last In First Out)。如图显示的是一个顺序存储结构的栈。
队列(Queue)也是一种操作受限的线性表,它是只允许在表的一端进行插入,而在另一端进行删除操作。表中允许进行插入操作的一端称为队尾(rear),允许进行删除操作的一端称为队头(front)。当队列中没有数据元素时,称之为空队列。
最先入队列的数据元素总是最先出队列,所以队列又称为“先进先出表”。如图所示是队列及其操作的示意