class Stack():
'''模拟栈的实现'''
def __init__(self):
# 定义容器,将元素放在容器中,这个容器可以是顺序表,也可以是链表
self.__list = []
# 入栈
def push(self,item):
self.__list.append(item)
# 弹出栈顶元素
def pop(self):
# 对于列表,不传pop()的参数,默认从尾部弹出,列表的尾部作为栈顶
return self.__list.pop()
# 返回栈顶元素
def peek(self):
if self.__list:
return self.__list[-1]
else:
return None
# 判空
def is_empty(self):
return self.__list==[]
# 返回栈中元素个数
def size(self):
return len(self.__list)
if __name__=='__main__':
s = Stack()
s.push(1)
s.push(2)
s.push(3)
s.push(4)
print(s.size())
print(s.pop())
print(s.pop())
print(s.pop())
print(s.pop())
print(s.size())
s.push(1)
s.push(2)
s.push(3)
s.push(4)
print(s.size())
print(s.peek())
print(s.size())
print(s.is_empty())
print()
python数据结构之栈的实现
最新推荐文章于 2024-06-25 18:56:29 发布