编写程序实现顺序栈的初始化、判断栈空否、入栈和出栈等
时间: 2024-01-27 17:05:45 浏览: 64
以下是Python语言实现的顺序栈:
```python
class SeqStack:
def __init__(self, maxsize=100):
self.stack = [None] * maxsize
self.top = -1
def is_empty(self):
return self.top == -1
def push(self, element):
if self.top == len(self.stack) - 1:
raise Exception("Stack Overflow")
self.top += 1
self.stack[self.top] = element
def pop(self):
if self.is_empty():
raise Exception("Stack Underflow")
element = self.stack[self.top]
self.top -= 1
return element
```
其中,`__init__`方法是初始化方法,创建一个大小为`maxsize`的数组作为栈,`top`表示栈顶元素的下标,初始为-1。`is_empty`方法判断栈是否为空,即`top`是否为-1。`push`方法实现入栈操作,如果栈已满,则抛出异常。`pop`方法实现出栈操作,如果栈为空,则抛出异常。
阅读全文