顺序栈存储结构的基本要素如下 ●初始时置栈顶指针tp=1。 ●栈空的条件为op=1; ●栈满的条件为op= Maxsize-1; ●元素进栈操作是先将栈顶指针增1,然后将元素e放在 栈顶指针处; ●出栈操作是先将栈顶指针处的元素取出,然后将栈顶指 针减1
顺序栈存储结构的基本要素如下: 初始时置栈顶指针top=-1。 栈空的条件为top==-1; 栈满的条件为top==MaxSize-1; 元素e进栈操作是先将栈顶指针增1,然后将元素e放在 栈顶指针处; 出栈操作是先将栈顶指针处的元素取出,然后将栈顶指 针减1
顺序栈的基本运算算法如下。 (1)判断栈是否为空 StackEmptyo 若栈顶指针top为-表示空栈。对应的算法如下: public bool StackEmptyO return(top
顺序栈的基本运算算法如下。 (1)判断栈是否为空StackEmpty() 若栈顶指针top为-1表示空栈。对应的算法如下: public bool StackEmpty() { return(top==-1); }
(2)进栈Push(e) 元素进栈只能从栈顶进,不能从栈底或中间位置进栈, 如下图所示。 元素e进栈后的结果 栈底 栈顶 栈顶 曾曾留 元素e进栈 會會會曾會
(2)进栈Push(e) 元素进栈只能从栈顶进,不能从栈底或中间位置进栈, 如下图所示。 栈底 栈顶 元素 e 进栈 元素 e 进栈后的结果 栈底 栈顶
在进栈运算中,当栈不满的条件下,先将栈顶指针增1, 然后在该位置上插入元素e对应的算法如下: public bool Push(string x) if(top==MaxSize-1) /栈上溢出时返回 false return false top+t 栈顶指针增1 data topl=x; return true;
在进栈运算中,当栈不满的条件下,先将栈顶指针增1, 然后在该位置上插入元素e。对应的算法如下: public bool Push(string x) { if (top==MaxSize-1) //栈上溢出时返回false return false; top++; //栈顶指针增1 data[top]=x; return true; }
(3)出栈Pope) 元素出栈只能从栈顶出,不能从栈底或中间位置出栈,如 下图所示。 元素e出栈后的结果 栈底 栈顶 栈底 栈顶 元素e出栈
(3)出栈Pop(e) 元素出栈只能从栈顶出,不能从栈底或中间位置出栈,如 下图所示。 栈底 栈顶 元素 e 出栈 栈底 栈顶 元素 e 出栈后的结果