题目内容

请完成以下顺序栈的出栈操作算法。Status Pop(SqStack &S, SElemType ____)// 删除顺序栈S中的栈顶数据元素,并用e返回其值{if (____) //如果栈空{ printf("The Stack is NULL!\n");return ERROR;}e=____; //删除栈顶元素并用e返回其值return OK;}

查看答案
更多问题

请完成以下求链栈的长度操作算法。int StackLength(LinkStack S)//返回链栈中数据元素的个数{ int length=____;//引进一个记载长度的变量,并赋初值LinkStack p=S;//引进p 指针, 使其指向链栈中第一个元素结点while(____){ ____;//长度加1p=p->next;//p指针后移}return length;}

请完成以下链栈的入栈操作算法。Status Push(LinkStack &S, SElemType e)// 在链栈S的栈顶插入新的元素e,使其成为新的栈顶元素{ LinkStack p=____; //产生新的结点if (!p)//空间分配失败return ERROR;p->data=e;____;//修改链,让新结点插入链栈的栈顶____;//栈顶指针指向新的栈顶结点return OK;}

请完成以下链栈的出栈操作算法。Status Pop(LinkStack &S, SElemType &e)// 删除链栈S中的栈顶数据元素,并用e返回其值{ if(____){ printf("The Stack is NULL!\n");return ERROR;}LinkStack p=____; //p指针指示链栈的栈顶元素结点e=p->data;//用e保存待删结点的数据元素值____;//栈顶指针S指向原栈顶元素的下一个元素结点free(p); //释放待删结点空间return OK;}

算术表达式(A+B)*(C+D/E)+F-G转换为后缀表达式后为____。

答案查题题库