用代码实现一个栈并输入0123入栈后再出栈并打印输出
时间: 2024-11-06 22:16:45 浏览: 22
当然可以。栈是一种先进后出(Last In First Out, LIFO)的数据结构。这里我们使用Python语言简单地实现一个基于列表的栈:
```python
class Stack:
def __init__(self):
self.stack = []
# 入栈操作
def push(self, item):
self.stack.append(item)
# 出栈操作
def pop(self):
if not self.is_empty():
return self.stack.pop()
else:
print("Stack is empty, cannot pop an element.")
# 检查栈是否为空
def is_empty(self):
return len(self.stack) == 0
# 打印栈顶元素
def peek(self):
if not self.is_empty():
return self.stack[-1]
else:
print("Stack is empty, no top element to show.")
# 使用示例
stack = Stack()
stack.push(0)
stack.push(1)
stack.push(2)
stack.push(3)
print("Top element:", stack.peek()) # 输出:3 (栈顶元素)
print("Pop elements:")
while not stack.is_empty():
print(stack.pop()) # 输出:3 2 1 0 (按顺序出栈)
```
在这个例子中,我们首先创建了一个栈`stack`,然后依次将数字0、1、2、3压入栈内。接着通过`peek()`函数查看栈顶元素,并使用循环不断从栈顶取出元素并打印,直到栈空。
阅读全文