1

来源:互联网 发布:c语言代码图片 编辑:程序博客网 时间:2024/06/05 06:20

栈是一种数据结构,一种只能在一端进行插入和删除操作的特殊线性表。

它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据,最后一个数据被第一个读出来。允许在同一端进行插入和删除操作的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。插入一般称为进栈(PUSH),删除则称为退栈(POP)。栈也称为后进先出表。


队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。

  队列具有先进先出的特点。

  队列空的条件: front = rear

  队列满的条件: rear = MAXSIZE

  循环队的入队算法如下:

  1、tail = tail + 1;

  2、若tail = n + 1,则tail = 1;

  3、若head = tail尾指针与头指针重合了,表示元素已装满队列, 则作上溢出错处理;

  4、否则,Q(tail) = X,结束(X为新入出元素)。


原创粉丝点击