单选题数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为()。Ar-fB(n+f-r)%nCn+r-fD(n+r-f)%n
单选题
数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为()。
A
r-f
B
(n+f-r)%n
C
n+r-f
D
(n+r-f)%n
参考解析
解析:
对于非循环队列,尾指针和头指针的差值便是队列的长度,而对于循环队列,差值可能为负数,所以需要将差值加上MAXSIZE(本题为n),然后与MAXSIZE(本题为n)求余,即(n+r-f)%n。
相关考题:
设循环队列用C语言数组A[m]表示,front指针指向真正队头的前一个位置,rear指针指向真正队尾,队列中当前元素个数为n,则(1)若已知front、rear,则n=()。(2)若已知front、n,则rear=()。(3)若已知rear、n,则front=()。
设有一个用数组Q[1.. m]表示的环形队列,约定f为当前队头元素在数组中的位置,r为队尾元素的后一个位置(按顺时针方向),若队列非空,则计算队列中元素个数的公式应为(29)。A.r-fB.(m+r-f)mod mC.(m-r+f)mod mD.(m-r-f)mod m
数组Q[0,n-1]作为一个环形队列,f为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,队列中元素的个数是A.r-fB.n+f-rC.n+r-fD.(n+r-f)mod n
数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素个数的公式为()。 A.r-fB、(n+f-r)%nC、n+r-fD、(n+r-f)%n
数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素的公式为A. r-fB. (n+f-r)% nC. n+r-fD. (n+r-f)% n
设循环队列中数组的下标是0~N-1,其队头、队尾指针分别为f和r(f指向队首元素的前一位置,r指向队尾元素),则其元素个数为()。 A.r-fB.r-f-1C.(r-f)%N+1D.(r-f+N)%N
循环队列中,设队列元素依次存放在Q[0..m]中,f、r分别指示队头元素位置和队尾元素的下一个位置,约定存储m个元素时为队满。则队列空的判定方法是(),队列满的判定方法是()。 A.f==rB.(f+1)%(m+1)==rC.(r+1)%(m+1)==fD.(r+1)% m==f
数组Q[0,1,2,…,n]用来表示一个循环队列,f为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的总个数小于n,计算队列中元素个数的公式为______。A.r-fB. n+f-rC. n+r-fD. (n+r-f)mod n
数组Q[0...n-1]作为一个环形队列,f为当前队头元素的前一位置,r为队尾元素的位置,则队列中元素个数的计算公式是 ______。A.r-fB.n+f-rC.n+r-fD.(n+r-f)mod n
假设以数组A[n]存放循环队列的元素,其头指针front指向队头元素的前一个位置、尾指针rear指向队尾元素所在的存储位置,则在少用一个元素空间的前提下,队列满的判定条件为 ( )A.rear==frontB.(front+1)%n==rearC.rear+1==frontD.(rear+1)%n==front
数组Q[0..n-1]作为一个环形队列,f为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,队列中元素的个数是( )。A.r-fB.n+f-rC.n+r-fD.(n+r-f)modn
设顺序循环队列Q[O:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()。A.(F-R+M)%MB.F-RC.(R-F+M)%MD.R-F
循环队列sq中,用数组elem[0‥25]存放数据元素,sq.front指示队头元素的前一个位置,sq.rear指示队尾元素的当前位置,设当前sq.front为20,sq.rear为12,则当前队列中的元素个数为()。A、8B、16C、17D、18
数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素的公式为()A、r-f;B、(n+f-r)%n;C、n+r-f;D、(n+r-F.%n
设循环队列的元素存放在一维数组Q[0‥30]中,队列非空时,front指示队头元素的前一个位置,rear指示队尾元素。如果队列中元素的个数为11,front的值为25,则rear应指向()元素。A、Q[4]B、Q[5]C、Q[14]D、Q[15]
设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()A、R-FB、F-RC、(R-F+M)%MD、(F-R+M)%M
单选题设循环队列的元素存放在一维数组Q[0‥30]中,队列非空时,front指示队头元素的前一个位置,rear指示队尾元素。如果队列中元素的个数为11,front的值为25,则rear应指向()元素。AQ[4]BQ[5]CQ[14]DQ[15]
单选题数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素的公式为()Ar-f;B(n+f-r)%n;Cn+r-f;D(n+r-F.%n
单选题设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()AR-FBF-RC(R-F+M)%MD(F-R+M)%M
填空题数组Q[n]用来表示一个循环队列,front为队头元素的前一个位置,rear为队尾元素的位置,计算队列中元素个数的公式为()。