使用数组建立一个能容纳10个元素的栈,要求从键盘输入5个数,一次存入栈中,然后按照出栈的标准顺序输出前三个出栈元素
时间: 2024-10-24 09:08:24 浏览: 16
在Python中,我们可以使用列表作为简单的动态数组来实现一个栈。以下是创建栈并按照标准顺序出栈(后进先出LIFO)的操作:
```python
class Stack:
def __init__(self, capacity=10):
self.stack = [None] * capacity
self.top = -1
# 入栈方法
def push(self, value):
if self.is_full():
print("Stack is full!")
else:
self.top += 1
self.stack[self.top] = value
# 出栈方法
def pop(self):
if self.is_empty():
print("Stack is empty!")
else:
return self.stack.pop()
# 判断栈是否满
def is_full(self):
return self.top == len(self.stack) - 1
# 判断栈是否空
def is_empty(self):
return self.top == -1
# 主程序
if __name__ == "__main__":
stack = Stack(10)
for i in range(1, 6): # 输入5个数
num = int(input(f"Enter element {i}: "))
stack.push(num)
print("\nElements popped out in LIFO order:")
for _ in range(3): # 输出前三个元素
print(stack.pop())
```
在这个示例中,我们首先初始化了一个容量为10的栈,并设置了top指针指向栈底。用户可以依次输入5个整数,存储到栈中。最后,我们循环弹出并打印出栈中的前三个元素。
阅读全文