第三章 循环队列及线性结构综合

1-1

所谓“循环队列”是指用单向循环链表或者循环数组表示的队列。 (1分)

   F

F将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列(Circular Queue)。这种循环队列可以以单链表的方式来在实际编程应用中来实现。因此,循环队列是一个抽象的数据结构,而单向循环链表或循环数组是具体的实现方式,不是数据结构本身。

 

1-2

在用数组表示的循环队列中,front值一定小于等于rear值。 (1分)

 F

1-3

不论是入队列操作还是入栈操作,在顺序存储结构上都需要考虑"溢出"情况。 (2分)

T 

链式存储反之

2-1

若用大小为6的数组来实现循环队列,且当前frontrear的值分别为0和4。当从队列中删除两个元素,再加入两个元素后,frontrear的值分别为多少? (2分)

  1. 2和0
  2. 2和2
  3. 2和4
  4. 2和6

2-2

如果循环队列用大小为m的数组表示,且用队头指针front和队列元素个数size代替一般循环队列中的frontrear指针来表示队列的范围,那么这样的循环队列可以容纳的元素个数最多为: (2分)

  1. m-1
  2. m
  3. m+1
  4. 不能确定

 有了size后就不必留一个空间表示队列满了,所以答案为m。

正常来讲,front == rear 既可以表示只有一个元素,或者满元素。所以如果没有size的话,答案应该是m-1。有了size,只需根据数组大小来判断元素个数。

2-3

如果循环队列用大小为m的数组表示,队头位置为front、队列元素个数为size,那么队尾元素位置rear为: (2分)

  1. front+size
  2. front+size-1
  3. (front+size)%m
  4. (front+size-1)%m

你可能感兴趣的:(数据结构作业题)