栈
后进先出的有序集合,这种原则叫LIFO。
栈是有序的 LIFO 。栈操作如下:

栈的实现
在 Python 中,与任何面向对象编程语言一样,抽象数据类型(如栈)的选择的实现是创建一个新类。
栈操作实现为类的方法。此外,为了实现作为元素集合的栈,使用由 Python 提供的原语集合的能力是有意义的。 我们将使用列表作为底层实现。
列表的结尾将保存栈的顶部元素。列表的结尾将保存栈的顶部元素。
class Stack:
def __init__(self):
self.items = []
def isEmpty(self):
return self.items == []
def push(self, item):
self.items.append(item)
def pop(self):
return self.items.pop()
def peek(self):
return self.items[len(self.items)-1]
def size(self):
return len(self.items)
pythonds 模块包含本书中讨论的所有数据结构的实现。它根据以下部分构造:基本数据类型,树和图。 该模块可以从 pythonworks.org下载。
1 from pythonds.basic.stack import Stack 2 3 s=Stack() 4 5 print(s.isEmpty()) 6 s.push(4) 7 s.push(‘dog‘) 8 print(s.peek()) 9 s.push(True) 10 print(s.size()) 11 print(s.isEmpty()) 12 s.push(8.4) 13 print(s.pop()) 14 print(s.pop()) 15 print(s.size())
队列
先进先出,FIFO
队列抽象数据类型由以下结构和操作定义。如上所述,队列被构造为在队尾添加项的有序集合,并且从队首移除。队列保持 FIFO 排序属性。 队列操作如下。
原文:https://www.cnblogs.com/pacino12134/p/10726322.html