循环队列的实际应用代码
时间: 2023-10-23 18:12:41 浏览: 33
循环队列是一种特殊的队列,它可以更高效地实现队列的操作。循环队列的实际应用很广泛,例如操作系统中的进程调度、网络数据传输中的缓冲区等。
下面是循环队列的实际应用代码示例:
```python
class CircularQueue:
def __init__(self, k):
self.queue = [None]*k
self.head = -1
self.tail = -1
self.size = k
def enqueue(self, value):
if self.is_full():
return False
if self.is_empty():
self.head = 0
self.tail = (self.tail + 1) % self.size
self.queue[self.tail] = value
return True
def dequeue(self):
if self.is_empty():
return False
if self.head == self.tail:
self.head = -1
self.tail = -1
return True
self.head = (self.head + 1) % self.size
return True
def front(self):
if self.is_empty():
return -1
return self.queue[self.head]
def rear(self):
if self.is_empty():
return -1
return self.queue[self.tail]
def is_empty(self):
return self.head == -1
def is_full(self):
return (self.tail + 1) % self.size == self.head
```
以上是 Python 语言实现的循环队列示例,其中 enqueue() 方法表示入队操作,dequeue() 方法表示出队操作,front() 方法返回队首元素,rear() 方法返回队尾元素。is_empty() 方法用于判断队列是否为空,is_full() 方法用于判断队列是否已满。