参考答案和解析
正确答案:错误
更多“若队列采用链式存储结构,队头指针与指针分别为front和rear,向队列中插入一个数据信息为item的新元素的过程是依次执行:call GETNODE(p),data(P)←item,rear←p,front←p。”相关问题
  • 第1题:

    判断“链式队列为空”的条件是______(front为头指针,rear为尾指针)。

    A.front==NULL

    B.rear==NULL

    C.front==rear

    D.front!=rear


    正确答案:C
    解析:用链表作为队列的存储结构时称为链式队列(链表)。链表的第一个表元是队列首结点,链表的末尾表元是队列的队尾结点,队尾结点的链接指针值为NULL。如果是带头结点的链式队列,则空队列的情形如图1-1(a)所示;若是带头结点的循环链式队列,则空队列的情形如图1-1(b)所示;若不带头结点,则空队列的情形如图1-1(c)所示,因此,当front==rear时表示队列为空。

  • 第2题:

    在循环队列中用数组A[0.m-1]存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是()。

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

    答案:D
    解析:
    D选项即为计算当前队列元素个数的公式。

  • 第3题:

    以数组Data[m+1]作为循环队列SQ的存储空间,front为头指针,rear为队尾指针,则执行出队操作的语句是()。

    A.front=front+1
    B.front=(front+1)%m
    C.front=(front+1)%(m+1)
    D.rear=(rear+1)%m

    答案:C
    解析:
    循环队列的出队操作是:front=(front+1)%(m+l)。

  • 第4题:

    设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针。设p指向要入队的新结点(该结点已被赋值),则入队操作为()。

    Arear->next=p;rear=p;

    Brear->next=p;p=rear;

    Cp=rear->next;rear=p;

    Drear=p;rear->next=p;


    A

  • 第5题:

    设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针。设p指向要入队的新结点(该结点已被赋值),则入队操作为()。

    • A、rear->next=p;rear=p;
    • B、rear->next=p;p=rear;
    • C、p=rear->next;rear=p;
    • D、rear=p;rear->next=p;

    正确答案:A

  • 第6题:

    在数组表示的循环队列中,front、rear分别为队列的头、尾指针,maxSize为数组的最大长度,队满的条件是()

    • A、front=maxSize
    • B、(rear+1)%maxSize=front
    • C、rear=maxSize
    • D、rear=front

    正确答案:B

  • 第7题:

    链队列的存储结构为: struct nodetype {ELEMTP data; struct nodetype *next; } struct linkqueue {struct nodetype *front,*rear; } /*front和rear分别为队列的头指针和尾指针*/ 完成下列删除队头元素的算法。 delq(struct linkqueue *r,ELEMTP *x) {q=*r; if(q.front= =q.rear)printf(“QUEUE IS EMPTY/n“); else{p=q.front->next; q.front->next=p->next; if(p->next= =NULL)q.rear=q.front; *x=();free(p);


    正确答案:p->data

  • 第8题:

    在具有n个单元的顺序存储的循环队列中,假定front和rear分别为队头指针和队尾指针,则判断队满的条件为()

    • A、rear%n= = front
    • B、(front+l)%n= = rear
    • C、rear%n -1= = front
    • D、(rear+l)%n= = front

    正确答案:D

  • 第9题:

    在具有n个单元的顺序存储的循环队列中,假定front和rear分别为队头指针和队尾指针,则判断队空的条件为()

    • A、rear%n= = front
    • B、front+l= rear
    • C、rear= = front
    • D、(rear+l)%n= front

    正确答案:C

  • 第10题:

    设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存出队元素的值,p为指向结点类型的指针,可执行如下操作:p=front->next;x=p->data;然后指行()。

    • A、front=p->next;
    • B、front->next=p;
    • C、front=p;
    • D、front->next=p->next;

    正确答案:D

  • 第11题:

    判断题
    若队列采用链式存储结构,队头指针与指针分别为front和rear,向队列中插入一个数据信息为item的新元素的过程是依次执行:call GETNODE(p),data(P)←item,rear←p,front←p。
    A

    B


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

  • 第12题:

    单选题
    若非空队列采用链式存储结构,队头指针与队尾指针分别为front和rear,则删除队列的一个元素的过程是依次执行:p=front;,(),free(p);。
    A

    rear=p;

    B

    rear=p->link;

    C

    front=p->link;

    D

    front=rear->link;


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

  • 第13题:

    C语言数组Data[m+1]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为( )

    A.front=front+1

    B.front=(front+1)%m

    C.rear=(rear+1)%m

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


    正确答案:D

  • 第14题:

    设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要入队列的结点X,则入队列的操作序列为()。

    A.s->next=rear;rear=s;
    B.front->next=s;front=s;
    C.rear->next=s;rear=s;
    D.s->next=front;front=s;

    答案:C
    解析:
    向队列插入元素,即入队操作,应该在队尾进行,所以需要修改尾指针,实现新结点的人队。

  • 第15题:

    设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存出队元素的值,p为指向结点类型的指针,可执行如下操作:p=front->next;x=p->data;然后指行()。

    Afront=p->next;

    Bfront->next=p;

    Cfront=p;

    Dfront->next=p->next;


    D

  • 第16题:

    设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存出队元素的值,p为指向结点类型的指针,可执行如下操作:p=front->next;x=p->data;然后执行()。

    Afront=p->next;

    Bfront->next=p->next;

    Cfront=p;

    Dfront->next=p;


    B

  • 第17题:

    若非空队列采用链式存储结构,队头指针与队尾指针分别为front和rear,则删除队列的一个元素的过程是依次执行:p=front;,(),free(p);。

    • A、rear=p;
    • B、rear=p->link;
    • C、front=p->link;
    • D、front=rear->link;

    正确答案:C

  • 第18题:

    在一个链队列中,front和rear分别为头指针和尾指针,则插入一个结点s的操作为()。

    • A、front=front->next
    • B、s->next=rear;rear=s
    • C、rear->next=s;rear=s;
    • D、s->next=front;front=s;

    正确答案:C

  • 第19题:

    在循环队列中用数组A[0..m-1]存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是()

    • A、(front-rear+1)%m
    • B、(rear-front+1)%m
    • C、(front-rear+m)%m
    • D、(rear-front+m)%m

    正确答案:D

  • 第20题:

    设数组Data[m+1]作为循环队列sq的存储空间,front成为队头指针,rear为队尾指针,则执行入队操作的语句为()

    • A、rear = rear+1
    • B、rear = (rear+1)%m
    • C、front = (front+1)%m
    • D、rear = (rear+1)%m + 1

    正确答案:D

  • 第21题:

    设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存出队元素的值,p为指向结点类型的指针,可执行如下操作:p=front->next;x=p->data;然后执行()。

    • A、front=p->next;
    • B、front->next=p->next;
    • C、front=p;
    • D、front->next=p;

    正确答案:B

  • 第22题:

    循环队列的队头和队尾指针分别为front和rear,则判断循环队列为空的条件是()。

    • A、front==rear
    • B、front==0
    • C、rear==0
    • D、front=rear+1

    正确答案:A

  • 第23题:

    单选题
    设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要入队列的结点x,则入队列的操作序列为(  )。
    A

    front->next=s;front=s;

    B

    s->next=rear;rear=s;

    C

    rear->next=s;rear=s;

    D

    s->next=front;front=s;


    正确答案: D
    解析: