当前位置:网站首页 > 技术博客 > 正文

判断循环队列队满的条件

以下为Python代码

实现

 class Queue: def __init__(self, capacity): self.capacity = capacity # 队列 容量 self.front = 0 # 队头指针 self.rear = 0 # 队尾指针 self.count = 0 # 队列 元素个数 self.data = [None] * capacity # 队列 数据  def is_empty(self): return self.count == 0  def is_full(self): return self.count == self.capacity  def enqueue(self, item): if self.is_full(): return False self.data[self.rear] = item self.rear = (self.rear + 1) % self.capacity self.count += 1 return True  def dequeue(self): if self.is_empty(): return None item = self.data[self.front] self.front = (self.front + 1) % self.capacity self.count -= 1 return item  def length(self): return self.count  def peek(self): if self.is_empty(): return None return self.data[self.front]  def traverse(self): if self.is_empty(): print("Empty Queue") return i = self.front while i != self.rear: print(self.data[i], end=" ") i = (i + 1) % self.capacity print() 

使用示例:

 q = Queue(5) q.enqueue(1) q.enqueue(2) q.enqueue(3) q.enqueue(4) q.enqueue(5) print("Length:", q.length()) # Length: 5 print("Peek:", q.peek()) # Peek: 1 q.traverse() # 1 2 3 4 5 q.dequeue() q.traverse() # 2 3 4 5 q.enqueue(6) q.traverse() # 2 3 4 5 6 

  • 上一篇: 二叉排序树的构造方法
  • 下一篇: 137 138端口
  • 版权声明


    相关文章:

  • 二叉排序树的构造方法2025-09-05 20:01:04
  • 显示器屏幕暗淡怎么办2025-09-05 20:01:04
  • http协议https2025-09-05 20:01:04
  • java匿名内部类和lambda表达式2025-09-05 20:01:04
  • 微服务gateway的作用2025-09-05 20:01:04
  • 137 138端口2025-09-05 20:01:04
  • 爬虫用什么软件2025-09-05 20:01:04
  • 预测模型有哪些?2025-09-05 20:01:04
  • 服务器硬件介绍2025-09-05 20:01:04
  • 51单片机流水灯程序通过位移2025-09-05 20:01:04