排队功能

Enqueue Function

本文关键字:功能 排队      更新时间:2023-10-16

在此代码中,rear++是在队列中分配一个元素之后,即queue[rear] = ele;因此队列元素将从索引-1开始,其中后方位置将为-1。队列[后方]=ele 后,这个后方++是如何工作的;

void enqueue()
{
int ele;
if (rear == MAX - 1)
{
cout<< "queue overflow" <<endl;
}
else
{
if (front == -1)
{
front = 0;
}
cout <<"enter the ele:";
cin >> ele;
queue[rear] = ele;
rear++;
}
}

从这个函数来看,队列的前端似乎位于索引 0 处。 这些元素被添加到不断增加的阵列位置。 示例:您的队列有 2 个元素: ele1 位于索引 0,ele2 位于索引 1。 在索引 2 处添加另一个元素(此时 2 等于后方(。 您递增后 (rear++( 以稍后添加下一个元素。

正如 Sami 所提到的,索引 -1 在C++数组中不存在。