假设用一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有____个元素?
这题考的是那块的知识点?栈还没学,参考书上也没找到,能具体解释下么~~
C++中的栈是什么意思
答案:5 悬赏:0
解决时间 2021-03-10 01:25
- 提问者网友:回憶丶初
- 2021-03-09 10:41
最佳答案
- 二级知识专家网友:星痕之殇
- 2021-03-09 12:18
栈是一种数据结构,他的特点就是先进先出,譬如你的那个数组,当栈底指针为bottom时,他的指向为49(即数组的最后一个元素),此时如果top也指向49那么栈是没有元素的,当每向栈中放一个数据的时候,栈顶指针就会向上移(即向数组下标小方向移动),每一次移动一位,即top--,所以一个元素top就为48,两个元素top就为47,以此类推,所以当top=30时,栈中有19个元素
全部回答
- 1楼网友:高冷不撩人
- 2021-03-09 15:58
栈是先进后出的
- 2楼网友:恕我颓废
- 2021-03-09 15:38
什么叫“帮c++(或c)实现什么功能”啊? 一般情况下,队列和栈在实际应用中还是很有用的,当你的应用程序要实现undo/redo的时候就要用到栈;当你的应用程序要实现设备通讯的时候就要用到队列了。 在c++和c的编译过程中,队列和栈是非常常用的,比如在词法分析和语法分析过程中,还有就是函数的调用等等,这些都是队列和栈的经典应用。如果你学过汇编,一定知道pop和push是再常用不过的了。
- 3楼网友:狙击你的心
- 2021-03-09 14:05
1、栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。 栈是一种数据结构,是只能在某一端插入和删除的特殊线性表。它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。
2、栈是允许在同一端进行插入和删除操作的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。插入一般称为进栈(PUSH),删除则称为退栈(POP)。 栈也称为后进先出表(LIFO--Last IN First Out表)。 栈可以用来在函数调用的时候存储断点,做递归时要用到栈。
- 4楼网友:兮沫♡晨曦
- 2021-03-09 12:51
栈的存储。
有19个元素,就是用bottom --top =19 ;
因为bottom指向栈底元素,top指向栈顶元素,相当于一个在头,一个在尾,而他们中间的数,就是这个栈的存储元素了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯