栈和队列的作用是什么?它们主要可以应用在哪些方面?

 我来答
教育小百科达人
2020-12-06 · TA获得超过156万个赞
知道大有可为答主
回答量:8828
采纳率:99%
帮助的人:466万
展开全部

栈和队列都属于一位链表,栈是后进先出,进和出都是在同一端进行,就好像一筒羽毛球,只有把上面拿出来,下面的才能拿出来;队列是先进先出的,进和出分别在不同的端进行,比如排队的人,排在前面的人先到柜台办理业务,后面来的人后得到服务。

栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底。

最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。栈具有记忆作用,对栈的插入与删除操作中,不需要改变栈底指针。



扩展资料:

计算机系统中,栈则是一个具有以上属性的动态内存区域。程序可以将数据压入栈中,也可以将数据从栈顶弹出。在i386机器中,栈顶由称为esp的寄存器进行定位。压栈的操作使得栈顶的地址减小,弹出的操作使得栈顶的地址增大。

栈在程序的运行中有着举足轻重的作用。最重要的是栈保存了一个函数调用时所需要的维护信息,这常常称之为堆栈帧或者活动记录。

光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
帐号已注销

2020-12-21 · TA获得超过2285个赞
知道小有建树答主
回答量:2630
采纳率:53%
帮助的人:84.7万
展开全部
1、栈的应用(历史的回溯)

栈的输出顺序和输入顺序相反;

栈有一个著名的应用场景“面包屑工程”,使用户在浏览页面时可以轻松的回溯到上一级或上一级页面。

2、队列的应用(历史的重演)

3、双端队列

4、优先队列

遵循的不是先入先出、而是谁的优先级最高,谁先出列

优先队列不属于线性数据结构的范畴了,它属于二叉堆来实现的

散列表

散列表也作哈希表(hash table),这种数据结构提供了key和value的映射关系,只要给出一个key,就可以高效的找到它所匹配的value

哈希函数(中转站)

散列表的读写操作:

1、写操作(put)

写操作就是在散列表中插入新的键值对(在jdk中叫作entry)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-09
展开全部
栈和队列的作用是排队作用,可以应用在排队类型的数据处理上,例如网络请求回复之类的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-09
展开全部
栈和队列都属于一位链表
区别是:
栈是后进先出,进和出都是在同一端进行,称为"压栈"(push)和"弹栈"(pop),就好象一筒羽毛球,只有把上面拿出来,下面的才能拿出来
队列是先进先出的,进和出分别在不同的端进行,比如排队的人,排在前面的人先到柜台办理业务,后面来的人后得到服务,所以称为"队列"是很形象的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式