长度为SIZE的循环队列有对头指针F和队尾指针R,以下说法正确的有()
-
循环队列在屋里存储上是首尾相接的圆环
-
判断队空的条件是:F==R+1,判断队满的条件是:(R+1)%SIZE==F
-
判断队空的条件是:F==R,判断队满的条件是:R%(SIZE+1)==F
-
判断队空的条件是:F==R,判断队满的条件是:(R+1)%SIZE==F
解答:
循环队列的概念:队列属于逻辑结构的概念,它们的物理存储既可以利用数组也可以利用链表完成,所以循环队列属于逻辑上首尾相接的抽象圆环。
高手的解答:
选4。考察的是循环队列的相关概念。
- 队列属于逻辑结构的概念,它们的物理存储既可以利用数组也可以利用链表完成,所以循环队列属于逻辑上首尾相接的抽象圆环,如上图所示。A错误。
- 空队列头尾指针指向同一个区域(0区域),所以F==R;满队列是随着元素的入队,尾指针逐渐加1,直到从0区域加到SIZE-1区域,这时尾指针指向SIZE-1区域,头指针指向0区域。判断队满的条件是尾指针再加1(由于是循环)所以头尾指针重合在0区域,(R+1)%SIZE==F