详细说明堆栈的功能及操作原理,及堆栈操作时如何入栈和出栈.

 我来答
theratlater
2012-12-23 · 超过20用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:53.5万
展开全部
看数据结构啊。后进先出。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
han15133268722
2015-09-02 · TA获得超过536个赞
知道小有建树答主
回答量:250
采纳率:100%
帮助的人:157万
展开全部
堆栈其实是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端
(称为栈顶(top))
对数据项进行插入和删除。要点:堆,顺序随意。栈,后进先出(Last-In/First-Out)。

针对栈这种数据结构的基本操作有两种:压栈和弹出,
在栈帧中包含两个标志----栈底和栈顶,其中栈顶标识着要push或pop
的数据的地址,而栈底则表示栈帧中最后一个数据的内存地址。

在Win32中,寄存器esp存放着栈底指针,栈是向低地址方向生长,
因此esp指向栈顶元素
堆栈对比(操作系统):
由编译器自动分配释放,存放函数的参数值,局部变量的值等。其
操作方式类似于数据结构中的栈栈使用的是一级缓存,

通常都是被调用时处于存储空间中,调用完毕立即释放

堆(操作系统):
一般由程序员分配释放,

若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。

堆则是存放在二级缓存中,生命周期由虚拟机的垃圾回收算法来决定(并不是一旦成为孤儿对象就能被回收)。所以调用这些对象的速度要相对来得低一些

堆(数据结构)
:堆可以被看成是一棵树,如:堆排序

栈(数据结构)
:一种后进先出的的数据结构

具体不同语言有不同的描述,可查看各种语言的api
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式