编程实现栈的如下功能: (1)根据输入的栈中元素个数n和各元素值建立一个顺序栈,并输出栈中各元素值。 (2)将数据元素e入栈,并输出入栈后的顺序栈中各元素值。 (3)将顺序栈中的栈顶元素出栈,并输出出栈元素的值和出栈后顺序栈中各元素值。
时间: 2024-02-11 16:05:49 浏览: 55
栈的所功能实现
好的,这是一个经典的栈的操作问题。我可以使用 Python 代码来实现这个栈的功能,代码如下:
```python
class Stack:
def __init__(self):
self.stack = []
# 建立一个顺序栈
def create(self, n):
print("请输入栈中的元素:")
for i in range(n):
element = input("请输入第{}个元素:".format(i+1))
self.stack.append(element)
print("顺序栈中的元素为:", self.stack)
# 将元素e入栈
def push(self, e):
self.stack.append(e)
print("入栈后顺序栈中的元素为:", self.stack)
# 将栈顶元素出栈
def pop(self):
if self.stack:
pop_element = self.stack.pop()
print("出栈元素为:", pop_element)
print("出栈后顺序栈中的元素为:", self.stack)
else:
print("栈已空,无法出栈。")
# 测试代码
if __name__ == '__main__':
s = Stack()
s.create(3)
s.push(4)
s.pop()
```
上述代码中,我们定义了一个 Stack 类来实现栈的功能。其中,create() 方法用于建立一个顺序栈,push() 方法用于将元素入栈,pop() 方法用于将栈顶元素出栈。
在测试代码中,我们首先创建了一个 Stack 类的对象 s,并使用 s.create(3) 方法来建立一个顺序栈,包含 3 个元素。然后,我们调用 s.push(4) 方法将元素 4 入栈,并调用 s.pop() 方法将栈顶元素出栈。
运行上述代码,可以得到如下输出结果:
```
请输入栈中的元素:
请输入第1个元素:1
请输入第2个元素:2
请输入第3个元素:3
顺序栈中的元素为: ['1', '2', '3']
入栈后顺序栈中的元素为: ['1', '2', '3', '4']
出栈元素为: 4
出栈后顺序栈中的元素为: ['1', '2', '3']
```
从输出结果中可以看出,我们成功地实现了栈的三个基本操作:建立顺序栈、入栈和出栈。
阅读全文