基于python使用数组实现一个栈
时间: 2024-09-22 15:02:53 浏览: 69
Python实现栈的方法详解【基于数组和单链表两种方法】
在Python中,我们可以使用列表(list)作为底层数据结构来实现一个简单的栈(Stack)。栈是一种先进后出(Last In First Out, LIFO)的数据结构。以下是基于列表实现栈的一些基本操作:
1. 创建空栈:
```python
class Stack:
def __init__(self):
self.items = []
```
2. 入栈 (Push):
```python
def push(self, item):
self.items.append(item)
```
3. 出栈 (Pop) 或查看顶部元素 (Peek):
```python
def pop(self):
if not self.is_empty():
return self.items.pop()
else:
raise Exception("Stack is empty")
def peek(self):
if not self.is_empty():
return self.items[-1]
else:
raise Exception("Stack is empty")
```
4. 检查栈是否为空 (is_empty) 和获取栈大小 (size):
```python
def is_empty(self):
return len(self.items) == 0
def size(self):
return len(self.items)
```
5. 清空栈 (clear):
```python
def clear(self):
self.items = []
```
使用示例:
```python
stack = Stack()
stack.push(1)
stack.push(2)
print(stack.peek()) # 输出:2
print(stack.pop()) # 输出:2
print(stack.size()) # 输出:1
```
阅读全文