概述
用顺序表来实现栈的功能
class Stack(object):
'''栈'''
def __init__(self):
#初始化一个顺序表来作为栈的容器,在python中可以是一个空列表
self.__list = []
def push(self,item):
'''添加一个新的元素item到栈顶'''
#对顺序表的操作,操作尾部的时间复杂度是O(1),所以使用append(),反之,使用链表实现栈时,就要操作头部
self.__list.append(item) #self.__list是list类的一个实例,可以调用列表基类的方法
def pop(self):
'''弹出栈顶元素'''
#也操作尾部
return self.__list.pop()
def peek(self):
'''返回栈顶元素'''
#如果列表不为空
if self.__list:
return self.__list[-1]
#如果列表为空,list[-1]不能对空列表操作
else:
return None
def is_empty(self):
'''判断栈是否为空'''
return self.__list == []
def size(self):
'''返回栈的元素个数'''
return len(self.__list)
if __name__ == "__main__":
s = Stack()
#压栈时是1 2 3 4
s.push(1)
s.push(2)
s.push(3)
s.push(4)
print(s.pop())
print(s.pop())
print(s.pop())
print(s.pop())
#弹栈时是4 3 2 1
最后
以上就是健忘百褶裙为你收集整理的用顺序表实现栈 --python描述用顺序表来实现栈的功能的全部内容,希望文章能够帮你解决用顺序表实现栈 --python描述用顺序表来实现栈的功能所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复