队列的实现
1 class Queue(): 2 def __init__(self, size=100): 3 self.rear = 0 4 self.front = 0 5 self.size = size + 1 6 self.li = [0 for _ in range(self.size)] 7 8 def is_empty(self): 9 return self.front == self.rear 10 11 def is_full(self): 12 return (self.rear + 1) % self.size == self.front 13 14 def en_queue(self, element): 15 if not self.is_full(): 16 self.rear = (self.rear + 1) % self.size 17 self.li[self.rear] = element 18 else: 19 raise IndexError("The queue is filled!") 20 21 def de_queue(self): 22 if not self.is_empty(): 23 self.front = (self.front + 1) % self.size 24 return self.li[self.front] 25 else: 26 raise IndexError("The queue is empty!") 27 28 29 if __name__ == '__main__': 30 que = Queue(5) 31 for i in range(3): 32 que.en_queue(i) 33 for _ in range(2): 34 print(que.de_queue()) 35 for i in range(3, 7): 36 que.en_queue(i) 37 for _ in range(5): 38 print(que.de_queue())
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人