niusouti.com

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

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

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

相似考题
更多“设顺序循环队列Q[O:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()。”相关问题
  • 第1题:

    设循环队列用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

  • 第2题:

    设某循环队列的容量为50,头指针front=5(指向队头元素的前一位置),尾指针rear=9(指向队尾元素),则该循环队列中共有______个元素。


    正确答案:24
    24 解析:实现循环队列时,头指针指向第一个元素的前一个空间,尾指针指向最后一个元素。因此,此时队列中6、7、8、…、29这24个空问存有元素,即队列中有29-5=24个元素。

  • 第3题:

    对于循环队列,下列叙述中正确的是( )。

    A.循环队列中元素的个数是由队头指针和队尾指针共同决定

    B.在循环队列中,需要队头指针就能反映队列中元素的动态变化情况

    C.在循环队列中,队头指针一定大于队尾指针

    D.在循环队列中,队头指针一定小于队尾指针


    正确答案:A
    循环队列是将顺序队列首尾相连形成的,随着插入元素或删除元素的进行,其队头指针及队尾指针是在不断变化的,有时可能会出现队头指针大于队尾指针的情况,也可能是队尾指针大于队头指针。

  • 第4题:

    下面叙述中正确的是

    A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

    B.在循环队列中,只需要队头指针就能反应队列中元素的动态变化情况

    C.在循环队列中,只需要队尾指针就能反应队列中元素的动态变化情况

    D.循环队列中元素的个数是由队头和队尾指针共同决定


    正确答案:D
    解析:循环队列是线性表的一种,所以选项A错误。循环队列的入队和出队需要队尾指针和队头指针完成,所以选项B和选项C错误。

  • 第5题:

    下列叙述中正确的是______。

    A.循环队列中有队头和卧尾两个指针,因此,循环队列是非线牲结构

    B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

    C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况

    D.循环队列中元素的个数是由队头指针和队尾指针共同决定


    正确答案:D
    解析:所谓循环队列,就是将队列存储空间的最后一个位置绕到第1个位置,形成逻辑上的环状空间,供队列循环使用。所以循环队列还是属于线性结构,所以选项A是错误的。循环队列的头指针front指向队列的第一个元素的前一位置,队尾指针rear指向队列的最后一个元素,循环队列的动态变化需要头尾指针共同反映,所以选项B、C是错误的。循环队列的长度是:(sq.rear-sq.front+maxsize)%maxsize,所以循环队列的长度是由队头和队尾指针共同决定的,所以选项D正确。

  • 第6题:

    某循环队列的容量为M,队头指针指向队头元素,队尾指针指向队尾元素之后,如下图所示(M=8),则队列中的元素数目为(41)(MOD表示整除取余运算)。

    A.rear-front

    B.front-rear

    C.(rear-front+M)MODM

    D.(front-rear+M)MOD M


    正确答案:C
    解析:本题考查数据结构中队列的础知识。队列是仅在表头删除元素、在表尾插入元素的操作受限的线性表,其特点是先入先出。应用中可以将队列看作容器。队列采用顺序存储结构(一维数组,顺序队列)时,为了降低运算的复杂度,元素入队时,只需修改队尾指针rear,(rear+1→rear);元素出队时,只需修改队头指针front(front+1→front)。由于顺序队列的存储空间是提前设定的,所以队尾指针会有一个上限值,当队尾指针达到其上限时,就不能只通过修改队尾指针来实现新元素的入队操作了。此时,可将顺序队列假想成一个环状结构,称为循环队列。队列容量为M时,队头指针front和队尾指针rear的值循环地在0~M-1之间变化,当rear>front时,队列中元素数目为rear-front;当rearfront时,队列中元素数目为rear-front +M。综上,队列中元素数目为(rear-front+M)MOD M。

  • 第7题:

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

    A.5

    B.15

    C.35

    D.40


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

  • 第8题:

    对于循环队列,下列叙述中正确的是( )。

    A.循环队列中元素的个数是由队头指针和队尾指针共同决定的

    B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

    C.在循环队列中,队头指针一定大于队尾指针

    D.在循环队列中,队头指针一定小于队尾指针


    正确答案:A
    循环队列是将顺序队列首尾相连形成的,随着插入元素或删除元素的进行,其队头指针及队尾指针是在不断变化的,有时可能会出现队头指针大于队尾指针的情况,也可能是队尾指针大于队头指针。

  • 第9题:

    设某循环队列的容量为50,头指针front=5(指向队头元素的前-位置),尾指针rear=29(指向队尾元素),则该循环队列中共有—________个元素。


    正确答案:
    24【分析】本题主要考查考生对循环队列的存储形式和入队运算、出队运算的理解。循环队列的初始状态为满或空(front=50,rear=50),出队:front=front+1(若front=50,则将1赋值给front),入队:rear=rear+1(若rear=51,则将1赋值给rear)。
    我们现在来模拟从循环队列的初始状态,经过多少次入队WWW出队操作来达到最终状态front=5,rear=29。
    假设循环队列的初始状态为满(front=50,rear=50),只能先出队,然后再入队。将一个元素出队,front=50+l=51,根据循环队列的规定应该将l赋值给front,即front=1,再将一个元素出队,front=1+1=2,直到出队5个元素,front=5。5个元素出队了,空出了5个空间,所以元素可以入队,将一个元素入队,rear=50+1=51,根据循环队列的规定应
    该将l赋值给rear,即rear=1,再将一个元素入队,rear=1+1=2,直到入队29个元素,rear=29。由于出队只空出5个空间,所以无法入队29个元素。因此循环队列的初始状态为满不成立。
    假设循环队列的初始状态为空(front=50,rear=50),只能先入队,然后再出队。rear=29,表示有29个元素入队了,也即队列中只有29个元素。现在front=5,表示要有5个元素出队,队列中只剩下29—5=24个元素。因此循环队列的初始状态只能为空。队列中有24个元素。
    同理,若循环队列的最终状态为front=29,rear=5,我们可以肯定循环队列的初始状态为满,则队中有50—29+5=26个元素。
    若循环队列的最终状态为front=29,rear=29,我们可以肯定循环队列为满或空,所以循环队列中有50或O个元素。
    总结,规律如下:若front>rear,队列中有n-front+rear个元素(其中n为循环队列的容量);若front<rear,队列中有rear-front个元素;若front=rear,队列中有n个或0个元素。因此本题的正确答案是24。

  • 第10题:

    一个循环队列Q的存储空间大小为M,其队头和队尾指针分别为front和rear,则循环队列中元素的个数为:()。


    正确答案:(rear-front+M)%M

  • 第11题:

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

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

    正确答案:C

  • 第12题:

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

    R-F

    B

    F-R

    C

    (R-F+M)%M

    D

    (F-R+M)%M


    正确答案: C
    解析: 暂无解析

  • 第13题:

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


    正确答案:

  • 第14题:

    下列叙述中正确的是( )。

    A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

    B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

    C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况

    D.循环队列中元素的个数是由队头指针和队尾指针共同决定的


    正确答案:D
    D【解析】循环队列中元素的个数是由队头指针和队尾指针共同决定的,元素的动态变化也是通过队头指针和队尾指针来反映的。

  • 第15题:

    设循环队列中数组的下标是0~N-1,其队头、队尾指针分别为f和r(f指向队首元素的前一位置,r指向队尾元素),则其元素个数为()。

    A.r-f

    B.r-f-1

    C.(r-f)%N+1

    D.(r-f+N)%N


    参考答案:D

  • 第16题:

    设某循环队列的容量为50,如果头指针front=45(指向队头元索的前一位置),尾指针Teatr=lO(指向队尾元素),则该循环队列中共有【 】个元素。


    正确答案:15
    15 解析:计算队列中元素个数的公式为:(read-front+MAXQSIZE)%MAxQSIZE,其中MAXQSIZE为队列的容量,所以该队列中的元素为(10-45+50)%50=15。

  • 第17题:

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

    A.5

    B.15

    C.35

    D.40


    正确答案:B
    B。【解析】队列个数=rear-front+容量。

  • 第18题:

    下列叙述中正确的是( )。

    A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

    B.在循环队列中,只需要队头指针就能反映队的中元素的动态变化情况

    C.在循环队列中,只需要队尾指针就能反映队的中元素的动态变化情况

    D.循环队列中元素的个数是由队头指针和队尾指针共同决定的


    正确答案:D
    循环队列中元素的个数是由队首指针和队尾指针共同决定的,元素的动态变化也是通过队首指针和队尾指针来反映的,当队首等于队尾时,队列为空。

  • 第19题:

    下列叙述中正确的是( )。【考点4队列】

    A.循环队列有队头和队尾两个指针,因此循环队列是非线性结构

    B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

    C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况

    D.循环队列中元素的个数是由队头指针和队尾指针共同决定的


    正确答案:D
    循环队列中元素的个数是由队头指针和队尾指针共同决定的,元素的动态变化也是通过队头指针和队尾指针来反映的。

  • 第20题:

    在一个顺序存储的循环队列中,队头指针指向队头元素的( )。

    A.前一个位置

    B.后一个位置

    C.队头元素位置

    D.队尾元素的前一位置


    正确答案:A
    解析:在循环队列中,为了判断队列满和队列空的情况,对队列少用一个元素空间,使头指针指向队头元素的前一个位置,当尾指针等于该位置时就表示队满。

  • 第21题:

    设顺序循环队列Q[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是计算顺序循环队列元素个数的公式。

  • 第22题:

    设循环队列的头指针front指向队首元素,尾指针rear指向队尾元素后的一个空闲元素,队列的最大空间为MAXLEN,则队满标志为()


    正确答案:front=(rear+1)%MAXLEN

  • 第23题:

    填空题
    设循环队列的头指针front指向队首元素,尾指针rear指向队尾元素后的一个空闲元素,队列的最大空间为MAXLEN,则队满标志为()

    正确答案: front=(rear+1)%MAXLEN
    解析: 暂无解析