本文共 1301 字,大约阅读时间需要 4 分钟。
# 堆栈的实现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)
栈满足 先进后出 原则
队列满足 先进先出 原则
# 队列的python实现,(头删尾插)# 列表的第一个元素作为队列的尾部# 列表的最后一个元素作为队列的头部class Queue: def __init__(self): self.items = [] # 判空 def isEmpty(self): return self.items == [] # 在尾部入队 def enqueue(self, item): self.items.index(0, item) # 在头部删除 def dequeue(self): self.items.pop() # 判断个数 def size(self): return len(self.items)
双端队列 头尾均可插入何删除
# 双端队列(头尾都可插入删除)class Dueue: # 创建双端队列 def __init__(self): self.items = [] # 在队首插入item def addFront(self,item): self.items.append(item) # 在队尾插入item def addRear(self,item): self.items.index(0, item) # 从队首移除 def removeFront(self): return self.items.pop() # 从队尾移除 def removeRear(self): return self.items.pop(0) # 判空 def isEmpty(self): return self.items == [] # 判断个数 def size(self): return len(self.items)
转载地址:http://ugren.baihongyu.com/