长度为13的数组存储循环队列,队头指针front=10指向队头元素的前一个位置,队尾指针rear=
1个回答
关注
展开全部
咨询记录 · 回答于2024-01-07
长度为13的数组存储循环队列,队头指针front=10指向队头元素的前一个位置,队尾指针rear=3指向队尾元素。经过6次入队,4次出队之后。front= ,rear= ,队列的长度= 。
长度为13的数组存储循环队列,队头指针front=10指向队头元素的前一个位置,队尾指针rear=3指向队尾元素。
经过6次入队,4次出队之后:
front=,rear=,队列的长度=。
答:亲,您好,rear是队尾指针。
front:队头指针;maxSize - 1:队列的最大容量
front:指向队列的第一个元素,也就是说queue[front]就是队列的第一个元素。front的初始值为0。
rear:只想队列的最后一个元素的后一个位置。因为希望空出一个空间作为约定。rear的初始值为0。
队列满的条件:(rear + 1) % maxSize == front
队列空的条件:rear == front
队列中的有效的数据个数:(rear + maxSize - front) % maxSize
队尾指针加1(注意取模):rear = (rear + 1) % maxSize
队头指针加1(注意取模):front = (front + 1) % maxSize