实现顺序栈,.入栈、出栈,.获取栈顶元素,检查栈是否为空函数
时间: 2024-10-12 22:08:33 浏览: 4
实现一个简单的顺序栈数据结构,通常会包含以下几个基本操作:
1. **入栈(Push)**:当一个新的元素需要添加到栈顶时,我们将其存储在栈的第一个位置(如果栈已满,可能需要扩容)。在Python中,这可以使用列表作为底层实现:
```python
def push(self, item):
self.stack.append(item)
```
2. **出栈(Pop)**:从栈顶移除并返回一个元素。这是通过访问列表的最后一个元素并弹出它来完成的:
```python
def pop(self):
if not self.is_empty():
return self.stack.pop()
else:
raise Exception("Stack is empty")
```
3. **获取栈顶元素(Top)**:查看但不移除栈顶的元素。同样,如果没有元素,应抛出异常:
```python
def top(self):
if not self.is_empty():
return self.stack[-1]
else:
raise Exception("Stack is empty")
```
4. **检查栈是否为空(Is Empty)**:这个功能用于判断栈中是否有元素。如果是空的,则返回True,反之False:
```python
def is_empty(self):
return len(self.stack) == 0
```