新建一个顺序栈,求出栈中所有元素个数
时间: 2024-10-24 10:05:00 浏览: 0
新建一个顺序栈(也称为数组栈),可以按照数组的索引来实现。首先,你需要创建一个固定大小的数组作为栈的数据结构,并维护两个变量,一个用于存储当前栈顶的位置(top),另一个用于记录实际元素的数量(size)。当向栈中添加元素(push操作)时,如果栈顶位置小于数组长度,则将新元素存放在 top 所指位置,然后 top 自增;当删除元素(pop操作)时,如果栈不为空,就将 top 减一并返回顶部元素。
要计算栈中所有元素的个数,只需查看 size 变量的值即可,因为它是动态更新的,表示了栈中实际存放的元素数量。下面是一个简单的伪代码示例:
```python
class Stack:
def __init__(self, capacity):
self.stack = [None] * capacity
self.top = -1
self.size = 0
# 添加元素到栈顶
def push(self, item):
if self.top < len(self.stack) - 1:
self.stack[++self.top] = item
self.size += 1
# 删除栈顶元素并返回
def pop(self):
if not self.is_empty():
self.size -= 1
return self.stack[self.top]
else:
return None
# 判断栈是否为空
def is_empty(self):
return self.top == -1 or self.size == 0
# 获取栈中元素个数
def get_size(self):
return self.size
```
要获取栈中所有元素的个数,直接调用 `get_size()` 即可。
阅读全文