中等
技术面试0 次浏览请实现一个简单的栈数据结构,包含入栈、出栈和获取栈顶元素的操作。
后端工程师
栈数据结构编码实现
答题要点
以下是使用 Python 实现的一个简单栈数据结构:pythonclass Stack: def __init__(self): self.items = [] def push(self, item): self.items.append(item) def pop(self): if self.is_empty(): return None return self.items.pop() def peek(self): if self.is_empty(): return None return self.items[-1] def is_empty(self): return len(self.items) == 0 def size(self): return len(self.items)在这个实现中,我们使用一个列表 `items` 来存储栈中的元素。`push` 方法用于将元素入栈,通过 `append` 方法将元素添加到列表的末尾。`pop` 方法用于将栈顶元素出栈,通过 `pop` 方法移除并返回列表的最后一个元素。`peek` 方法用于获取栈顶元素,返回列表的最后一个元素,但不将其移除。`is_empty` 方法用于判断栈是否为空,通过检查列表的长度是否为 0 来实现。`size` 方法用于返回栈中元素的数量,通过返回列表的长度来实现。