循环队列Queue(最多元素为MAX)判断队列为空的条件是()。 A. Queue->front= =NULL; B. Queue->rear= =NULL; C. Queue->front= = Queue->rear; D. Queue= =NULL;
循环队列Queue(最多元素为MAX)判断队列为空的条件是()。 A. Queue->front= =NULL; B. Queue->rear= =NULL; C. Queue->front= = Queue->rear; D. Queue= =NULL;
参考答案和解析
front==(rear+1)%maxSize
相关考题:
●在循环队列中用数组A[0.m-1]存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是 (38) 。(38) A.(front-rear+1)%mB.(rear-front+1)% mC.(front-rear+m)% mD.(rear-front+m)% m
判定一个循环队列qu(最多元素为MaxSize)为空的条件是()。A.QU->rear - QU->front = =MaxSizeB.QU->rear - QU->front -1= =MaxSizeC.QU->front = = QU->rearD.QU->front = = QU->rear+1
在循环队列中,若front与rear分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是()。A.front==rear+1B.rear==front+1C.front==rearD.front==0
设循环队列为Q(1:m),初始状态为front=rear=m。现经一系列入队与退队操作后,front=rear=m-1,则()。A.该循环队列已空B.该循环队列已满C.该循环队列中有1个元素D.该循环队列已空或已满
循环队列Q的元素出队时的队头指针操作是() A、rear=(rear+1)%sizeB、rear=rear+1C、front=(front+1)%sizeD、front=(front-1)%size
最大容量为n的循环队列,队尾指针是rear,队头是front,则队空的条件是()。A.(rear+1)MODn=frontB.rear=frontC.rear+1=frontD.(rear-l)MODn=front
判断一个循环队列cq(最多元素为m)为空的条件是()。A.cq->rear-cq-front=m;B.(cq->rear+1)%m=cq->front;C.cq->front=cq->rear;D.cq->rear=m-1;
判断一个顺序存储的队列sp为空的条件是()。A.sp->front=sp->rearB.sp->front=sp->rear+1C.sp->front=sp->rear-1D.sp->front=NULL
阅读下列函数说明和C函数,将应填入(n)处的字句写对应栏内。[说明]二叉树的二叉链表存储结构描述如下:typedef struct BiTNode{ datatype data;struct BiTNode *lchild, * rchild; /*左右孩子指针*/}BiTNode,* BiTree;对二叉树进行层次遍历时,可设置一个队列结构,遍历从二叉树的根结点开始,首先将根结点指针入队列,然后从队首取出一个元素,执行下面两个操作:(1) 访问该元素所指结点;(2) 若该元素所指结点的左、右孩子结点非空,则将该元素所指结点的左孩子指针和右孩子指针顺序入队。此过程不断进行,当队列为空时,二叉树的层次遍历结束。下面的函数实现了这一遍历算法,其中Visit(datatype a)函数实现了对结点数据域的访问,数组queue[MAXNODE]用以实现队列的功能,变量front和rear分别表示当前队首元素和队尾元素在数组中的位置。[函数]void LevelOrder(BiTree bt) /*层次遍历二叉树bt*/{ BiTree Queue[MAXNODE];int front,rear;if(bt= =NULL)return;front=-1;rear=0;queue[rear]=(1);while(front (2) ){(3);Visit(queue[front]->data); /*访问队首结点的数据域*/if(queue[front]—>lchild!:NULL){ rear++;queue[rear]=(4);}if(queue[front]->rchild! =NULL){ rear++;queue[rear]=(5);}}}
设循环队列的结构是: const int MaxSize=100; typedef int Data Type; typedef struct { DataType data[MaxSize]; int front, rear; }Queue; 若有一个Queue类型的队列Q,试问判断队列满的条件应是(33)。A.Q.front=Q.rear;B.Q.front-Q.rear==MaxSize;C.Q.front+Q.rear=MaxSize;D.Q.front==(Q.rear+1)%MaxSize;
设循环队列的结构如题33。若有一个Queue类型的队列Q,计算队列元素个数应该用(34)。A.(Q.rear-Q.front+ MaxSize)%MaxSize;B.Q.rear-Q.front+1;C.Q.rear-Q.front-1;D.Q.rear-Qfront;
设某循环队列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)%MD.(Q.rear-Q.front+M)%M
假定一个顺序循环队列的队首和队尾指针分别用front和rear表示,则判队空的条件是()A、front+1==rearB、front==rear+1C、front==0D、front==rear
在循环队列中用数组A[0..m-1]存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是()A、(front-rear+1)%mB、(rear-front+1)%mC、(front-rear+m)%mD、(rear-front+m)%m
数据结构中,循环队列最大容量是MAX,队头是front,队尾是rear,采用人为浪费一个单元的形式,则队的长度是()。A、(rear—front)%MAXB、(rear—front+MAX)%MAXC、rear—front+MAXD、都不对
在具有n个单元的顺序存储的循环队列中,假定front和rear分别为队头指针和队尾指针,则判断队空的条件为()A、rear%n= = frontB、front+l= rearC、rear= = frontD、(rear+l)%n= front
最大容量为n的循环队列,队尾指针是rear,队头是front,则队空的条件是()。A、(rear+1)%n==frontB、rear==frontC、rear+1==frontD、(rear-l)%n==front
单选题在循环队列中,若front与rear分别表示对头元素和队尾元素的位置,则判断循环队列空的条件是( )。Afront==rear+1Brear==front+1Cfront==rearDfront==0
填空题链队列的存储结构为: 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);
单选题若循环队列有 n个顺序存储单元,front、rear分别为队首和队尾元素的下标,front指向队首元素之前的一个位置,为则判断队空的条件是()。A front = =rearB (front-1)%n= =rearC (rear+1)%n= =frontD (rear-1)%n= = front
单选题判定一个循环队列qu(最多元素为MaxSize)为空的条件是( )。Aqu-rear-qu-front==MaxSizeBqu-rear-qu-front-1==MaxSizeCqu-rear ==qu-frontDqu-rear=qu-front-1