摘要: 栈和队列都是线性表:栈和队列,它们都是特殊的线性表,只不过对插入和删除操作做了限制。栈:限定仅在表尾进行插入和删除操作的线性表。队列:只允许在一端进行插入操作,而在另一端进行删除操作的线性表。栈和队列的顺序存储结构:它们都可以用线性表的顺序存储结构实现,但都存在着顺序存储的一些弊端,因此它们各自有一... 阅读全文
posted @ 2015-02-10 16:49 stemon 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 链队列的实现方法:队列的链式存储结构,其实就是线性表的单链表,只不过它只能尾进头出而已,简称为链队列。为了操作上的方便,我们将队头指针指向链队列的头节点,而队尾指针指向终端节点。空队列时,front和rear都指向头节点。注意:这里的实现是有头结点的,在队列的初始化函数中要为头结点开辟空间。链队列的... 阅读全文
posted @ 2015-02-10 16:34 stemon 阅读(612) 评论(0) 推荐(0) 编辑
摘要: 队列的定义:队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列的抽象数据类型:ADT 队列(Queue)Data 同线性表,元素具有相同的类型,相邻元素具有前驱和后继关系。Operation InitQueue(*Q): 初始化操作,建立一个空队列。 ... 阅读全文
posted @ 2015-02-10 14:56 stemon 阅读(1351) 评论(0) 推荐(0) 编辑
摘要: 栈的定义:当单链表限定只能在头部进行插入和删除操作的时候,就是链栈。同时把栈顶放在单链表的头部,使单链表的头指针和栈顶指针top合二为一,所以对于链栈,就不再需要头结点了。这时对链栈的push也就相当于单链表的头插法。同时对链栈来说,基本不存在栈满的情况,除非内存已经没有可以使用的空间了,对于空栈来... 阅读全文
posted @ 2015-02-10 00:56 stemon 阅读(653) 评论(0) 推荐(0) 编辑