循环队列sq中,用数组elem[0‥25]存放数据元素,sq.front指示队头元素的前一个位置,sq.rear指示队尾元素的当前位置,设当前sq.front为20,sq.rear为12,则当前队列中的元素个数为()。A、8B、16C、17D、18

题目

循环队列sq中,用数组elem[0‥25]存放数据元素,sq.front指示队头元素的前一个位置,sq.rear指示队尾元素的当前位置,设当前sq.front为20,sq.rear为12,则当前队列中的元素个数为()。

  • A、8
  • B、16
  • C、17
  • D、18
参考答案和解析
正确答案:D
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

数组Q[0,1,2,…,n]用来表示一个循环队列,f为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的总个数小于n,计算队列中元素个数的公式为______。

A.r-f

B. n+f-r

C. n+r-f

D. (n+r-f)mod n


正确答案:D
解析: 参见循环队列的定义和性质。

第2题:

数组Q[0..n-1]作为一个环形队列,f为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,队列中元素的个数是( )。

A.r-f

B.n+f-r

C.n+r-f

D.(n+r-f)modn


正确答案:D

第3题:

设循环队列用C语言数组A[m]表示,front指针指向真正队头的前一个位置,rear指针指向真正队尾,队列中当前元素个数为n,则(1)若已知front、rear,则n=()。(2)若已知front、n,则rear=()。(3)若已知rear、n,则front=()。


参考答案:n=(rear-front+m)%mrear=(front+n)%mfront=(rear-n+m)%m

第4题:

循环队列sq中,用数组elem存放数据元素,sq.front指示队头元素的前一个位置,sq.rear指示队尾元素的当前位置,队列的最大容量为MAXSIZE,则在队列未满时元素x入队列的主要操作为()。

  • A、sq.rear= (sq.rear+1)mod MAXSIZE; sq.elem[sq.rear]=x;
  • B、sq.elem[sq.rear]=x; sq.rear= (sq.rear+1)mod MAXSIZE;
  • C、sq.front= (sq.front+1)mod MAXSIZE; sq.elem[sq.front]=x;
  • D、sq.elem[sq.front]=x; sq.front= sq.front+1;

正确答案:A

第5题:

设顺序循环队列Q[O:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()。

A.(F-R+M)%M
B.F-R
C.(R-F+M)%M
D.R-F

答案:C
解析:
(R-F+M)%M是计算顺序循环队列元素个数的公式。

第6题:

数组Q[0...n-1]作为一个环形队列,f为当前队头元素的前一位置,r为队尾元素的位置,则队列中元素个数的计算公式是 ______。

A.r-f

B.n+f-r

C.n+r-f

D.(n+r-f)mod n


正确答案:D

第7题:

以数组Q[0…m-1]存放循环队列中的元素,若变量front和qulen分别指示循环队列中队头元素的实际位置和当前队列的长度,则队尾元素的实际位置是()。

A.front+qulen-1
B.(front+qulen)modm
C.(front+qulen-1)modm
D.front+qulen

答案:C
解析:
循环队列的元素顺序存储在数组Q中,已知循环队列中队头元素的存储位置为front。当前队列的长度为qulen,队尾元素的位置要在front上加上qulen,然后减l(第一个元素存储在front的位置上),对于循环队列求队尾的位置还要对总长度求余,所以队尾元素的实际位置为(front+qulen-1)modm。

第8题:

设某循环队列的容量为50,如果头指针front=15(指向队头元素的前-位置),尾指针rear=10(指向队尾元素),则该循环队列中共有元素个数为( )。

A.5

B.15

C.35

D.40


正确答案:B
队列个数-rear—front+容量。

第9题:

循环队列用a[0],...,a[7]的一维数组存放队列元素,(采用少用一个元素的模式),设front和rear分别为队头和队尾指针,且front和rear 的值分别为2和7,当前队列中的元素个数是()。
5

第10题:

数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素的公式为()

  • A、r-f;
  • B、(n+f-r)%n;
  • C、n+r-f;
  • D、(n+r-F.%n

正确答案:D

更多相关问题