使用列表创建栈类
'''栈使用顺序表实现,使用顺序表尾部当栈顶时间复杂度好,或链表使用头部当栈顶'''
def __init__(self):
self.__list = []
def push(self, item):
'''添加一个新元素item到栈顶'''
self.__list.append(item)
def pop(self):
'''弹出栈顶元素'''
self.__list.pop()
def peek(self):
'''返回栈顶元素'''
if self.__list:
return self.__list[-1]
else:
return None
def is_empty(self):
'''判断是否为空'''
return not self.__list
def size(self):
'''返回栈的元素个数'''
return len(self.__list)```