一、栈的基本概念
栈(stack):限定在表尾进行插入和删除操作的线性表。
栈顶(top):允许进行插入和删除操作的一端,又称表尾。
栈底(bottom):固定端,又称表头。
空栈:不含元素的空表称为空栈。
插入元素的操作称为入栈(压栈)。
删除元素的操作称为出栈(弹栈)。
顺序存储的栈称为顺序栈。
链式存储的栈称为链栈。
设栈S=(a1,a2,...an),则a1称为栈底元素,an称为栈顶元素。栈中元素按后进先出(Last in First out)LIFO的顺序进出。
二、队列的基本概念
队列:是一种先进先出(FIFO)的线性表,它只允许在表的一端进行插入,在表的另一端进行删除。
队尾:允许插入的一端叫队尾。
队头:允许删除的一端叫队头。
顺序存储的队列称为顺序队列。
链式存储的队列称为链队列。
设队列Q=(a1,则a1称为队头元素,an称为队尾元素。队列中元素按先进先出(First in First out)FIFO的顺序进出。
双端队列:限定插入和删除操作在表的两端进行的线性表。