设栈的存储空间为S(1:m),初始状态为TOP=m+1。经过一系列入栈与退栈操作后,TOP=m
设栈的存储空间为S(1:m),初始状态为TOP=m+1。经过一系列入栈与退栈操作后,TOP=m设栈的存储空间为S(1:m),初始状态为TOP=m+1。经过一系列入栈与退栈...
设栈的存储空间为S(1:m),初始状态为TOP=m+1。经过一系列入栈与退栈操作后,TOP=m设栈的存储空间为S(1:m),初始状态为TOP=m+1。经过一系列入栈与退栈操作后,TOP=m。现又在栈中退出一个元素后,栈顶指针top值为?
哪位可以给我讲讲为什么? 展开
哪位可以给我讲讲为什么? 展开
2个回答
展开全部
m+1 。
这个栈是从栈顶向栈底压的,一般平时是从栈底向栈顶压,这道题目中是倒过来的。
若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出);置TOP=TOP+1(栈指针加1,指向进栈地址);S(TOP)=X,结束(X为新进栈的元素)。
扩展资料:
若TOP≤0,则给出下溢信息,作出错处理(退栈前先检查是否已为空栈, 空则下溢);X=S(TOP),(退栈后的元素赋给X):TOP=TOP-1,结束(栈指针减1,指向栈顶)。
定义stack的简单代码:
stack<int> sta;
入栈:sta.push(x);
出栈:sta.pop();
判断栈的大小: sta.size();
判断栈是否为空:sta.empty();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询