●设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为 (41) 。(41) A.front=front+1B.front=(front+1)%(m-1)C.front=(front-1)%mD.front=(front+1)%m

题目

●设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为 (41) 。

(41) A.front=front+1

B.front=(front+1)%(m-1)

C.front=(front-1)%m

D.front=(front+1)%m


相似考题
更多“●设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头 ”相关问题
  • 第1题:

    设数组data[O…m]作为循环队列sq的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为

    A.sq↑.front:=sq↑.front+1;

    B.sq↑.front:=(sq↑.front+1)%maxsize;

    C.sq↑.rear:=(sq↑.rear+1)%maxsize;

    D.sq↑.front:=(sq↑.front+1)%(maxsize+1);


    正确答案:B
    解析:循环队列采用的方法是:假设向量sq↑.data[maxsize]是一个首尾相接的圆环,即sq↑.data[0]接在sq↑.data[maxsize-1]之后,我们将这种意义下的向量称循环向量,并将循环向量中的队列称为循环队列。若当前尾指针等于向量的上界,则再做人队列操作时,令尾指针等于向量的下界,这样就利用到已被删除的元素空间,克服假上溢现象。因此入队操作时,在循环意义下的尾指针加1操作可描述为:if(sq↑. rear>=maxsize)sq↑.near:=0;else sq↑.rear++;如果利用“模运算”,上述循环意义下的尾指针加1操作,可以更简洁地描述为:sq↑.rear=(sq↑.rear+1)% maxsize。同样,出队操作时,在循环意义下的头指针加1操作,也可利用“模运算”来实现:sq↑. front:=(sp↑.front+1)% maxsize。

  • 第2题:

    设数组data[m]作为循环队列sq的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为( )。

    A.front=-front+1

    B.front=-(front+1)%(m-1)

    C.front=-(front-1)%m

    D.front=-(front+1)%m


    正确答案:D
    解析:队列的出队操作是对头结点进行的,首先头结点出队头指针一定会加1,因为是循环队列,因此需要对元素个数取模。

  • 第3题:

    设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为(41)。

    A.front=front+1

    B.front=(front+1)%(m-1)

    C.front=(front-1)%m

    D.front=(front+1),%m


    正确答案:D
    解析:循环队列中出队操作后头指针需在循环意义下加1,因此为front=(front+l)%m。

  • 第4题:

    设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为( )。

    A.front=front+1

    B.front=(front+1)%(m-1)

    C.front=(front-1)%m

    D.front=(front+1)%m


    正确答案:D
    解析:设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为front=(front+1)%m。

  • 第5题:

    设数组data[0…m]作为循环队列sq的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为

    A.sq↑.front:=sq↑.front+1;

    B.sq↑.front:=(sq↑.front+1)%maxsize;

    C.sq↑.rear:=(sq↑.rear+1)%maxsize;

    D.sq↑.front:=(sq↑.front+1)%(maxsize+1);


    正确答案:B
    解析:循环队列采用的方法是:假设向量sq↑.data[maxsize]是一个首尾相接的圆环,即sq↑.data[0]接在sq↑.data[maxsize-1]之后,我们将这种意义下的向量称循环向量,并将循环向量中的队列称为循环队列。若当前尾指针等于向量的上界,则再做入队列操作时,令尾指针等于向量的下界,这样就利用到已被删除的元素空间,克服假上滥现象。因此入队操作时,在循环意义下的尾指针加1操作可描述为:if(sq↑.rear>=maxsize)sq↑.near:=0;elsesq↑.rear++;如果利用“模运算”,上述循环意义下的尾指针加1操作,可以更简洁地描述为:sq↑.rear=(sq↑.rear+1)%maxsize。同样,出队操作时,在循环意义下的头指针加1操作,也可利用“模运算”来实现:sq↑.front:=(sq↑.front+1)%maxsize。