抽象数据类型栈的定义如下: ADT Stack 数据对象 D={a1|1sn,n>0,a.为 ElemType类型}/假设 Elem Type为 string 数据关系: REr r={<a1a1+1>|a;2a+1∈D,i=1,,n-1} 基本运算 bool StackEmpty(string e):判断栈是否为空,若空栈返回真;否则返回假。 bool Push(string e):进栈,将元素e插入到栈中作为栈顶元素。 bool Pop( restring e):出栈,从栈中退出栈顶元素,并将其值赋给e Geop( ref string e):取栈顶元素,返回当前的栈顶元素,并将其值赋给e。抽象数据类型栈的定义如下: ADT Stack { 数据对象: D={ai | 1≤i≤n,n≥0,ai为ElemType类型} //假设ElemType为string 数据关系: R={r} r={<ai ,ai+1> | ai ,ai+1∈D, i=1,…,n-1} 基本运算: bool StackEmpty(string e):判断栈是否为空,若空栈返回真;否则返回假。 bool Push(string e):进栈,将元素e插入到栈中作为栈顶元素。 bool Pop(ref string e):出栈,从栈中退出栈顶元素,并将其值赋给e。 GetTop(ref string e):取栈顶元素,返回当前的栈顶元素,并将其值赋给e。 }