R6-3 另类循环队列
时间: 2023-12-10 15:02:32 浏览: 95
循环队列
5星 · 资源好评率100%
R6-3 另类循环队列是一种使用循环数组表示的队列,与普通的循环队列不同的是,它只设队列头指针Front,而不设尾指针Rear。另外,它还使用Count来记录队列中元素的个数。
下面是实现队列的入队和出队操作的算法:
bool AddQ(Queue Q, ElementType X) {
if (Q->Count == Q->MaxSize) {
printf("Queue Full");
return false;
} else {
Q->Data[Q->Front] = X;
Q->Front = (Q->Front + 1) % Q->MaxSize;
Q->Count++;
return true;
}
}
ElementType DeleteQ(Queue Q) {
if (Q->Count == 0) {
printf("Queue Empty");
return ERROR;
} else {
ElementType X = Q->Data[(Q->Front - Q->Count + Q->MaxSize) % Q->MaxSize];
Q->Count--;
return X;
}
}
阅读全文