编写程序,实现顺序栈的创建、进栈和出栈等基本操作算法
时间: 2024-01-24 10:17:06 浏览: 94
以下是基于Python语言实现的顺序栈代码:
```python
class Stack:
def __init__(self, size):
self.stack = []
self.size = size
self.top = -1
def is_empty(self):
return self.top == -1
def is_full(self):
return self.top == self.size - 1
def push(self, val):
if self.is_full():
print("Stack is full!")
else:
self.top += 1
self.stack.append(val)
def pop(self):
if self.is_empty():
print("Stack is empty!")
else:
self.top -= 1
return self.stack.pop()
def peek(self):
if self.is_empty():
print("Stack is empty!")
else:
return self.stack[self.top]
def display(self):
if self.is_empty():
print("Stack is empty!")
else:
for i in range(self.top, -1, -1):
print(self.stack[i])
```
其中,`__init__`方法用于初始化栈的大小、栈顶指针以及空栈。`is_empty`方法和`is_full`方法用于判断栈是否为空或满。`push`方法用于将元素压入栈中,`pop`方法用于将栈顶元素弹出栈,`peek`方法用于查看栈顶元素,`display`方法用于打印栈中的所有元素。
阅读全文