更多"现有一个空栈,栈顶指针为100H,现有输入序列为A、B、C、D、E,经"的相关试题:
[单项选择]
现有一个空栈,栈顶指针为100H,现有输入序列为A、B、C、D、E,经过操作push,push,pop,push,pop,push后,输出的序列为(),此时栈顶的指针为()。
此时栈顶的指针为()
A. 100H
B. 101H
C. 102H
D. 103H
[单项选择]栈的数组表示中,top为栈顶指针,栈空的条件是 (31) 。
A. top=0
B. top=maxSize
C. top=maxSize
D. top=-1
[填空题]设一个链栈的栈顶指针为ls,栈中结点两个字段分别为info和next,其中next是指示后继结点的指针,栈空的条件是______。如果栈不空,则退栈操作为p:=ls;______;dispose(p)。
[单项选择]若一个栈以向量V[1..n]存储,且空栈的栈顶指针top为n+1,则将元素x入栈的正确操作是()
A. top=top+1;V[top]=x;
B. V[top]=x;top=top+1;
C. top=top-1;V[top]=x;
D. V[top]=x;top=top-1;
[单项选择]在一个具有n个单元的顺序堆栈中,以地址低端作为栈底,以top作为栈顶指针。那么,在进行退栈操作时,top的变化情况为()。
A. top增1
B. top减1
C. top不变
D. top置0
[单项选择]设链式栈中结点的结构为(data,link),且top是指向栈顶的指针。若想摘除链式栈的栈顶结点,并将被摘除结点的值保存到x中,则应执行的操作是()。
A. x=top->data;top=top->link;
B. top=top->link;x=top->data;
C. x=top;top=top->link;
D. x=top->data;
[单项选择]设链式栈中结点的结构为(data,link),且top是指向栈顶的指针。若想在链式栈的栈顶插入一个由指针s所指的结点,则应执行的操作是()。
A. top->link=s;
B. s->link=top->link;top->link=s;
C. s->link=top;top=s;
D. s->link=top;top=top->link;
[填空题]下面是一个栈类的模板,其中push函数将元素i压入栈顶,pop 函数弹出栈顶元素。栈初始为空,top值为0,栈顶元素在stack[top-1)中,在下面横线处填上适当语句,完成栈类模板的定义。
template <class T>
class Tstack
{
enum{size=1000};
T stack[size];
int top;
public:
Tstack( ):top(0) { }
void push(const T&i) {
if (top<size)
stack[top++]=i;
}
T pop( ) {
if(top==0) exit(1); // 栈空时终止运行
return 【15】 ;
}
};
[填空题]下面是一个栈类的模板,其中push函数将元素i压入栈顶,pop函数弹出栈顶元素栈初始为空,top值为0,栈项元素在stack[top-]中,在下面横线处填上适当语句,完成栈类模板的定义。
template<class T>
class Tstack
enumsize=1000;
Tstack[size];
int top;
public:
Tstack( ):top(0)
void push(const T &i)
if(top<size)
stack[top++]=i;
Tpop( )
if(top==0)exit(1);//栈空时终止运行
return______;
;
[填空题]下面是一个栈类的模板,其中push函数将元素i压入栈顶,pop函数弹出栈顶元素。栈初始为空,top值为0,栈项元素在stack[top-1]中,在下面横线处填上适当语句,完成栈类模板的定义。
template<class T>
class Tstack {
enum{size=1000};
T stack[size];
int top;
public:
Tstack( ):top(0){
void push(const T &i){
if(top<size)
stack[top++]=i;
}
Tpop( ){
if(top==0)exit(1);//栈空时终止运行
return ______;
}
};