class Stack
时间: 2024-07-14 20:01:28 浏览: 146
Stack.class
`Stack`通常是指一种数据结构,它遵循"最后入栈者先出栈"(Last In, First Out, LIFO)的原则。在Python中,可以自定义实现一个简单的堆栈类,也可以使用内置的`collections`模块中的`deque`(双端队列)来创建。
**自定义Stack类**:
```python
class Stack:
def __init__(self):
self.items = []
def push(self, item):
"""添加元素到栈顶"""
self.items.append(item)
def pop(self):
"""移除并返回栈顶元素"""
if not self.is_empty():
return self.items.pop()
def peek(self):
"""查看但不移除栈顶元素"""
return self.items[-1] if not self.is_empty() else None
def is_empty(self):
"""检查栈是否为空"""
return len(self.items) == 0
# 使用示例
stack = Stack()
stack.push(1)
stack.push(2)
print(stack.peek()) # 输出: 2
```
**使用collections.deque**:
```python
from collections import deque
stack = deque()
stack.append(1)
stack.append(2)
print(stack[-1]) # 输出: 2 (与peek()效果相同)
```
阅读全文