2个回答
展开全部
一、相同点
都是线性结构,都是逻辑结构的概念。都可以用顺序存储或链表存储;栈和队列是两种特殊的线性表,即受限的线性表,只是对插入、删除运算加以限制。
二、不同点:
1、运算规则不同
线性表为随机存取,而栈是只允许在一端进行插入、删除运算,因而是后进先出表LIFO;队列是只允许在一端进行插入、另一端进行删除运算,因而是先进先出表FIFO。
2、用途不同
堆栈用于子程调用和保护现场,队列用于多道作业处理、指令寄存及其他运算等等。
扩展资料
线性表的特点
1.集合中必存在唯一的一个“第一元素”。
2.集合中必存在唯一的一个 “最后元素” 。
3.除最后一个元素之外,均有唯一的后继(后件)。
4.除第一个元素之外,均有唯一的前驱(前件)。
线性表、包括顺序表和链表,顺序表里面元素的地址是连续的。链表里面节点的地址不是连续的,是通过指针连起来的。
顺序表相关的操作跟数组有关,一般都是移动数组元素。优点:随机访问特性,查找O(1)时间,存储密度高;逻辑上相邻的元素,物理上也相邻。缺点:插入删除需移动大量元素。
推荐于2017-11-25
展开全部
都有顺序结构和链式结构;栈和队列是在程序设计中被广泛使用的两种线性数据结构,它们的特点在于基本操作的特殊性,栈必须按"后进先出"的规则进行操作,而队列必须按"先进先出"的规则进行操作。和线性表相比,它们的插入和删除操作受更多的约束和限定,故又称为限定性的线性表结构。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询