更多“单选题设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为(  )。A 4B 6C m-5D m-6”相关问题
  • 第1题:

    设循环队列的存储空间为Q(1:3),初始状态为front=rear=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有()个元素。


    正确答案:29
    通过题干的描述可知此循环队列共30个空间,另外队尾指针rear的值小于队头指针front的值,所以利用公式(rear-front+30)%30=29,可知此循环队列的元素个数为29。

  • 第2题:

    设循环队列的存储空间为Q(l:30),初始状态为front= rea=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有【 2 】个元素。


    正确答案:
    【答案】:29
    【知识点】:循环队列元素个数的计算方法
    【解析】:循环队列中元素个数的计算方法是:当尾指针大于头指针时,循环队列中元素个数为尾指针-头指针,当尾指针小于头指针时,循环队列中元素个数为(rear-front+容量)%容量,此题中循环队列共有30个容量,另外队尾指针rear的值小于队头指针front的值,所以利用公式(rear-front+30)%30计算得到循环队列的元素个数为29。

  • 第3题:

    设循环队列存储空间为Q(1:50),初始状态为{ront—rear一50。经过一系列入队和退队操作后,front:rear一25,则该循环队列中元素个数为( )。

    A.26

    B.25

    C.24

    D.0或50


    正确答案:D
    循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置。循环队列长度为50,由初始状态为front=rear-50可知此时循环队列为空。入队运算时,首先队尾指针rear进1(即rearTl),然后在队尾指针rear指向的位置插入新元素。特别的,当队尾指针rear=50十1时.置rear-1。退队运算时,排头指针front进](即front+1),然后删除front指针指向的位置上的元素,当排头指针front=50-1时,置front=1。若经过运算,front-rear可知队列空或者队列满,则队列中有0或者50个元素。故选D选项。

  • 第4题:

    设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。现经过一系列入队与退队操作后,front=rear=1,此后又正常地插入了两个元素。最后该队列中的元素个数为( )。

    A.2

    B.1

    C.3

    D.52


    正确答案:A
    循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用排头指针指向排头元素的前一个位置。循环队列长度为50,由初始状态为front-rear一50可知此时循环队列为空。入队运算时,首先队尾指针进1(即rear+1),然后在rear指针指向的位置插入新元素。特别的,当队尾指针rear=50+1时,置rear=1。退队运算时,排头指针进l(即front+1),然后删除front指针指向的位置上的元素,当排头指针front=50+1时,置front=1。若经过运算,front=rear=1可知队列空或者队列满。此后又正常地插入了两个元素说明插入前队列为空,则插入后队列元素个数为2。故选A选项。

  • 第5题:

    设循环队列的存储空间为Q(1:m),初始状态为空。现经过一系列正常的入队与退队操作后,front=m-1,rear=m,此后再向该循环队列中插入一个元素,则队列中的元素个数为()。

    A.2

    B.1

    C.m-1

    D.m


    正确答案:A

  • 第6题:

    设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为()。

    A.4

    B.6

    C.m-5

    D.m-6


    正确答案:A

  • 第7题:

    某循环队列Q 的定义中用 front和 rear 两个整型域变量表示队列状态,其中 front 指示队头元素的位置、rear 指示队尾元素之后的位置(如下图所示,front的值为5、rear 的值为 1)。若队列容量为M(下图中 M=6),则计算队列长度的通式为()

    A.(Q.front-Q.rear)
    B.(Q.front- Q.rear+M)%M
    C.( Q.rear-Q.front)
    D.(Q. rear-Q.front +M)%M

    答案:D
    解析:
    根据题中的图示,当Q.rear-Q.front≥0时,队列长度为Q.rear-Q.front;当Q.rear-Q.front<0时,队列元素个数为(Q.rear-Q.front+M)。综上,队头元素的位置应该为(Q.rear-Q.size+M)%M。

  • 第8题:

    设某循环队列Q的定义中有front和rear两个域变量,其中,front指示队头元素的位置,rear指示队尾元素之后的位置,如下图所示。若该队列的容量为M,则其长度为(57)。

    A.(Q.rear-Q.front+1)
    B.(Q.rear-Q.front+M)
    C.(Q.rear-Q.front+1)%M
    D.(Q.rear-Q.front+M)%M

    答案:D
    解析:
    本题考查数据结构基础知识。根据题目中所给的示意图,Q.front为队头元素的指针,Q.rear表示队尾元素之后的一个空位置,故队列长度为Q.rear-Q.front,由于队列中存储位置编号是在0~M-1之间循环的,Q.rear-Q.front的结果有可能是负数,故在Q.rear-Q.front基础上加上M可恢复为正数,而此正数有可能超出0~M-1的范围,故用整除,M取余运算恢复一下,因此长度计算的式子为(Q.rear-Q.front+M)%M。

  • 第9题:

    设循环队列的容量为40(序号从0到39),现经过一系列的入队和出队运算后,有①front=11,rear=19;②front=19,rear=11;问在这两种情况下,循环队列中各有元素多少个?


    正确答案: 用队列长度计算公式:(N+r-F)%N
    ①L=(40+19-11)%40=8②L=(40+11-19)%40=32

  • 第10题:

    单选题
    设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后front=15,rear=15,则循环队列中的元素个数为()。
    A

    15

    B

    16

    C

    20

    D

    0或35


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

  • 第11题:

    单选题
    设循环队列为Q(1:m),初始状态为front=rear=m。现经过一系列的入队与退队运算后,front=rear=1,则该循环队列中的元素个数为(  )。
    A

    1

    B

    2

    C

    m-1

    D

    0或m


    正确答案: A
    解析:
    在循环队列中,front为队首指针,指向队首元素的前一个位置;rear为队尾指针,指向队尾元素。front=rear=1时,①循环队列可能为空,队首和队尾指针都指向空元素,此时循环队列的元素个数为0;②循环队列可能为满,此时循环队列的元素个数为m。答案选择D选项。

  • 第12题:

    单选题
    设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列的元素个数为(  )。
    A

    15

    B

    16

    C

    20

    D

    0或35


    正确答案: B
    解析:
    在循环队列中,front为队首指针,指向队首元素的前一个位置;rear为队尾指针,指向队尾元素。front=rear=15时,①循环队列可能为空,队首和队尾指针都指向空元素,此时循环队列的元素个数为0;②循环队列可能为满,此时循环队列的元素个数为35。答案选择D选项。

  • 第13题:

    设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。

    A.20

    B.0或35

    C.15

    D.16


    正确答案:B
    Q(1:35)则队列的存储空间为35;对空条件:front=rear(初始化时:front=rear),队满时:(rear+1)%n==front,n为队列长度(所用数组大小),因此当执行一系列的出队与入队操作,front=rear.则队列要么为空,要么为满。

  • 第14题:

    设循环队列的存储空间为Q(1:35),初始状态为front=rear一35。现经过一系列入 队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。

    A.15

    B.16

    C.20

    D.0或35


    正确答案:D
    Q(1:35)则队列的存储空间为35;对空条件:front=rear(初始化时:front=rear),队满时:(rear+1)%n==front,n为队列长度(所用数组大小),因此当执行过一系列的出队与入队操作,front=rear,则队列要么为空,要么为满。

  • 第15题:

    某循环队列的存储空间为Q(1:m),初始状态为front=rear=m。现经过一系列的入队操作和退队操作后,front=m一1,real"=m,则该循环队列中的元素个数为( )。

    A.m一1

    B.1

    C.m

    D.0


    正确答案:B
    循环队列长度为m,由初始状态为front=real"=ITl可知此时循环队列为空。入队运算时,首先队尾指针(rear)进1(即rear+I),然后在lear指针指向的位置插入新元素。特别的,当队尾指针lear=m+1时,置l"ear=1。退队运算时,排头指针(front)进1(即front+1),然后删除front指针指向的位置上的元素,当排头指针front=m+1时,置front=1。从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,则该循环队列中的元素个数为m一(m一1)=1。故选择B选项。

  • 第16题:

    设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=20,rear=15。现要在该循环队列中寻找最小值的元素,最坏情况下需要比较的次数为()。

    A.5

    B.6

    C.m-5

    D.m-6


    正确答案:D

  • 第17题:

    设循环队列为Q(1:m),初始状态为front=rear=m。现经过一系列的入队与退队运算后,front=rear=1,则该循环队列中的元素个数为()。

    A.1

    B.2

    C.m-1

    D.0或m


    正确答案:D

  • 第18题:

    设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为()。

    A.19

    B.20

    C.m-19

    D.m-20


    正确答案:D

  • 第19题:

    设循环队列的存储空间为Q(1:30),初始状态front=rear=30,先经过一系列入队和退队运算后,front=10,rear=10,则循环队列中的元素个数为()。

    A.30
    B.0
    C.29
    D.0或30

    答案:D
    解析:
    当frontrear时,循环队列中的元素个数为N-front+rear(N为循环队列容量)。当front=rear时,循环队列中的元素个数可能为空,也可能为满。

  • 第20题:

    假设Q[1,10]是一个循环队列,初始状态为front=rear=1,若做完debgh入队和de出队的操作后,rear=(),front=().


    正确答案:6;3

  • 第21题:

    设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后front=15,rear=15,则循环队列中的元素个数为()。

    • A、15
    • B、16
    • C、20
    • D、0或35

    正确答案:D

  • 第22题:

    单选题
    设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为(  )。
    A

    19

    B

    20

    C

    m-19

    D

    m-20


    正确答案: A
    解析:
    循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用队首指针指向队首元素的前一个位置,因此,从队首指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,队列初始状态为front=rear=m,当front=30,rear=10时,队列中有m-30+10=m-20个元素,最坏情况下需要比较次数为m-19次。答案选择D选项。

  • 第23题:

    单选题
    设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=20,rear=15,要在该循环队列中寻找最小值的元素,最坏情况下需要比较的次数为(  )。
    A

    5

    B

    6

    C

    m-5

    D

    m-6


    正确答案: B
    解析:
    循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用队首指针指向队首元素的前一个位置,因此,从队首指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,队列初始状态为front=rear=m,当front=20,rear=15时,队列中有m-20+15=m-5个元素,最坏情况下需要比较次数为m-6次。答案选择D选项。

  • 第24题:

    单选题
    设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为(  )。
    A

    4

    B

    6

    C

    m-5

    D

    m-6


    正确答案: B
    解析:
    循环队列顺序存储结构队列。循环队列中,rear指向队列中的队尾元素,front指向队头元素的前一个位置,本题中,在front指向的后一个位置和rear指向的位置之间,所有的元素均为队列中的元素。队列初始状态为front=rear=m,当front=15,rear=20时,队列中共有20-15(尾指针-头指针)=5个元素,寻找其中最大值的最坏情况是逐项比较,所以需比较4次。答案选择A选项。