python3.X栈的实现
1. 什么是栈
栈(stacks)是一种只能通过访问其一端来实现数据存储与检索的线性数据结构,具有后进先出(last in first out,LIFO)的特征
2.python3.X代码实现
class stack(object):
"""栈"""
def __init__(self):
self.__list=[]
def push(self,item):
"""入栈"""
self.__list.append(item)
def pop(self):
"""出栈"""
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.pop())
print(s.size())
print(s.peek())
print(s.pop())
print(s.pop())
print(s.pop())
print(s.is_empty())