初始化栈,取出栈顶元素,出栈,入栈的代码
时间: 2024-10-13 21:07:33 浏览: 10
初始化栈通常涉及创建一个新的栈结构,比如在许多编程语言中可以使用数组或链表作为底层数据结构。这里是一个简单的栈(基于数组实现)的初始化、入栈、出栈以及取出栈顶元素的伪代码示例:
```python
# 定义栈
class Stack:
def __init__(self):
# 初始化一个空列表作为栈
self.stack = []
# 入栈 (push) 操作
def push(self, item):
self.stack.append(item)
# 出栈 (pop) 操作 - 取出并删除栈顶元素
def pop(self):
if not self.is_empty():
return self.stack.pop()
else:
raise IndexError("Stack is empty")
# 取栈顶元素 (peek) - 不实际从栈中移除
def peek(self):
if not self.is_empty():
return self.stack[-1]
else:
raise IndexError("Stack is empty")
# 判断栈是否为空
def is_empty(self):
return len(self.stack) == 0
# 使用例子
stack = Stack()
stack.push(1) # 入栈
print(stack.peek()) # 输出:1
stack.push(2)
top_element = stack.pop() # 出栈并打印:2
```
在这个例子中,`push` 方法用于添加元素到栈顶,`pop` 方法用于移除并返回栈顶元素,而 `peek` 方法则查看但不移除栈顶元素。如果试图从空栈中弹出或取元素,会抛出异常。
阅读全文