3.出栈 void Pop(sTacK s, stackEntry *item) if( StackEmpty(xS)exit(“ Stack is empt!y”); ese item=s->top->item; p=S->top; S->top=p->next; free(p); 请单市鼠标左键换页
3. 出栈 void Pop(STACK*S, StackEntry *item) { if (StackEmpty(*S)) exit(“Stack is empty”); else { *item=S->top->item; p=S->top; S->top=p->next; free(p); } }
4.获取栈顶元素内容 void GetTop(stacK s, stack Entry *item) if(StackEmpty (s)exit(Stack is empty); else *item=S. top->item; 5.判断栈S是否空 int StackEmpty(STACK s) if(s. top--NULL) return TRUE; else false: 请单市鼠标左键换页
4. 获取栈顶元素内容 void GetTop(STACK S,StackEntry *item) { if (StackEmpty(S)) exit(“Stack is empty”); else *item=S.top->item; } 5. 判断栈S是否空 int StackEmpty(STACK S) { if (S.top==NULL) return TRUE; else FALSE; }
31.4栈的应用举例 【举例1】将从键盘输入的字符序列逆置输出 比如,从键盘上输入: tset a si sit;算法将输出: This is a test 下面我们给出解决这个问题的完整算法。 typedef char StackEntry; void eversereado STACK S ∥定义一个栈结构S char ch: Initstack(&s) }始化栈 请单市鼠标左键换页
3.1.4 栈的应用举例 【举例1】将从键盘输入的字符序列逆置输出 比如,从键盘上输入:tset a si sihT;算法将输出: This is a test 下面我们给出解决这个问题的完整算法。 typedef char StackEntry; void ReverseRead( ) { STACK S; //定义一个栈结构S char ch; InitStack(&S); //初始化栈