新建一个顺序栈,每个元素都有id和name,实现入栈和出栈操作
时间: 2024-10-12 21:04:53 浏览: 0
在创建一个顺序栈(也称为数组栈)时,我们可以使用数组来存储元素,其中每个元素包含一个ID和一个名称。这里是一个简单的Python实现:
```python
class StackElement:
def __init__(self, id, name):
self.id = id
self.name = name
class SequentialStack:
def __init__(self):
self.items = []
# 入栈(push)操作
def push(self, item):
new_item = StackElement(item['id'], item['name'])
self.items.append(new_item)
# 出栈(pop)操作
def pop(self):
if not self.is_empty():
return self.items.pop()
else:
return None # 如果栈为空,返回None
# 检查栈是否为空
def is_empty(self):
return len(self.items) == 0
# 返回栈顶元素,但不移除它(peek)
def peek(self):
if not self.is_empty():
return self.items[-1]
else:
return None
# 使用示例
stack = SequentialStack()
stack.push({'id': 1, 'name': 'Alice'})
stack.push({'id': 2, 'name': 'Bob'})
top_element = stack.peek() # {'id': 2, 'name': 'Bob'}
popped_element = stack.pop() # {'id': 2, 'name': 'Bob'}