首先上队列的代码
class Queue():
'''队列'''
def __init__(self):
self.__list = []
def enqueue(self, item):
'''在队列中添加元素'''
self.__list.append(item)
def dequeue(self):
'''从头部删除一个元素'''
return self.__list.pop(0)
def is_empty(self):
'''判断是否为空'''
return False if len(self.__list) else True
def size(self):
'''返回队列长度'''
return len(self.__list)
def main():
q = Queue()
q.enqueue(1)
q.enqueue(3)
q.enqueue(6)
print(q.dequeue())
qq = q.is_empty()
print(False == qq)
print(q.size())
if __name__ == "__main__":
main()
接下来时栈的代码
class Stack():
'''栈'''
def __init__(self):
self.__list = []
def push(self,item):
'''添加新元素'''
self.__list.append(item)
def pop(self):
'''弹出元素'''
self.__list.pop()
def peek(self):
'''返回栈顶元素'''
return self.__list[-1] if self.__list else None
def is_empty(self):
'''判断是否为空'''
return False if len(self.__list) else True
def size(self):
'''返回栈高度'''
return len(self.__list)
def main():
s = Stack()
s.push(1)
s.push(3)
ss = s.is_empty()
print(False == ss)
print(s.size())
if __name__ == "__main__":
main()
其实很简单,利用Python的列表就可以实现上面的两种数据结构,在设置过程中,稍微留心一下就可以做好。