第四章 栈与队列
栈:限定仅在表尾进行插入和删除操作的线性表。(后进先出的线性表),简称LIFO结构。
允许插入和删除的一端为栈顶,相对的则为栈底。
tips:
1.栈满(top1 + 1 == top2)
2.链栈:栈的链式存储结构。
3.递归函数:一个直接调用自己或通过一系列的调用语句间接地调用自己的函数。
队列:只允许在一端进行插入操作,而在另一端进行删除操作的线性表。(先进先出的线性表),简称FIFO结构。
允许插入的一端称为队尾,允许删除的一端称为队头。
tips:
1.循环队列:队列的头尾相接的顺序存储结构。
2.队列满的判断方法:
(1)设置标志变量
(2)队列空为front == rear,队列满为(rear+1)% QueueSize == front。此时队列长度为(rear-front+QueueSize)%QueueSize
3.队列的链式存储结构:尾进头出的线性表的单链表,简称为链队列。
4.在已知队列长度最大值的情况下选择循环队列,否则选链队列。