栈和队列
栈
栈(stack) 限定仅在表尾进行插入或删除操作的线性表。
表尾端称为栈顶(top),表头端称为栈底(bottom)。

后进先出的线性表。栈的抽象数据类型定义:
|
|
顺序栈定义:
|
|
设定两个常量:STACK_INIT_SIZE(存储空间初始分配量) 和STACKINCREMENT(存储空间分配增量)
top:栈顶指针,初始值指向栈底,base:栈底指针,初始值指向栈底顶,stacksize:栈当前可用容量
顺序栈模块说明:
|
|
栈的应用举例
迷宫求解(从入口到出口的路径算法)

|
|
栈与递归的实现
队列
队列(queue)是一种先进先出的线性表。只允许在表的一端进行插入,而在另一端删除元素。
队列的抽象数据类型定义:
|
|
链队列

|
|
循环队列
|
|