资源描述:
《《数据结构》习题汇编03-第三章-栈与队列-试题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第三章栈和队列试题一、单项选择题1.栈的插入和删除操作在()进行。A.栈顶B.栈底C.任意位置D.指定位置2.当利用大小为n的数组顺序存储一个栈时,假定用top==n表示栈空,则向这个栈插入一个元素时,首先应执行()语句修改top指针。A.top++;B.top--;C.top=0;D.top;3.若让元素1,2,3依次进栈,则出栈次序不可能出现()种情况。)位置。A.3,2,1B.2,1,3C.3,1,2D.lz3,24.在一个顺序存储的循环队列中,队头指针指向队头元素的(5.A.前一个B.后一个C.当前D.后面当利用大小为
2、n的数组顺序存储一个队列时,该队列的最大长度为(D•n+1A.n-26.从一个顺序存储的循环队列屮删除一个元素时,需要()。A.队头指针加一B.队头指针减一C・取出队头指针所指的元素D・取出队尾指针所指的元素7•假定一个顺序存储的循环队列的队头和队尾指针分别为front和rear,则判断队空的条件为()。A.front+1==rearB.rear+l==frontC・front==0D.front==rear8.假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为()。A.front==rearB.f
3、ront!=NULLC.rear!=NULLD.front==NULL9.设链式栈中结点的结构为(data,link),且top是指向栈顶的指针。若想在链式栈的栈顶插入一个由指针s所指的结点,则应执行操作()。A.top—>1ink=s;B•s->link=top—>1ink;top—>1ink=s;C.s->丄ink=top;top=s;D.s->丄ink=top;top=top->link;10•设链式栈中结点的结构为(data,link),且top是指向栈顶的指针。若想摘除链式栈的栈顶结点,并将被摘除结点的值保存到x中,
4、则应执行操作()。A.x=top->data;top=top—>1ink;B•top=top->link;x=top—〉data;C.x=top;top=top->link;D.x=top->data;11・设循环队列的结构是#defineMaxSize100typedefintElemType;typedefstruct{ElemTypebase[MaxSize];intfront,rear;}Queue;若有一个Queue类型的队列Q,则判断队列满的条件应是语句()。A.Q.front==Q.rear;C•Q.front+
5、Q.rear==MaxSize;B.Q.front-Q.rear==MaxSize;D.Q.front==(Q•rear+1)%MaxSize;12•设循环队列的结构是#defineMaxSize100typedefintElemType;typedefstruct{ElemTypebase[MaxSize];intfront,rear;}Queue;若有一个Queue类型的队列Q,则应用语句(A.(Q.rear--Q.front+MaxSizeB.Q.rear-Q•front+1;C.Q.rear一Q•front-1;D.Q
6、.rear一Qfront;)计算队列元素个数。%MaxSize;13•在做进栈运算时,应先判断栈是否(A.空B.满)C.上溢D.下溢14•为增加内存空间的利用率和减少溢出的可能性,()分别设在这片内存空间的两端。A.长度B.深度由两个栈共享一片连续的内存空间时,应将两栈的C.栈顶D.栈底15.使用两个栈共享一片内存空间时,当()时,才产生上溢。A.两个栈的栈顶同时到达这片内存空间的中心点B.其中一个栈的栈顶到达这片内存空间的中心点C・两个栈的栈顶在这片内存空间的某一位置相遇D・两个栈均不空,且一个栈的栈顶到达另一个栈的栈底二、
7、填空题1.栈是一种限定在表的一端插入和删除的线性表,它的特点是O2.队列是一种限定在表的一端插入,在另一端删除的线性表,它的特点是o3.队列的插入操作在进行,删除操作在进行。4.向一个顺序栈插入一个元素时,首先使后移一个位置,然后把待插入元素写入到这个位置上。5.从一个顺序栈中删除元素时,需要将前移一位位置。1.若设顺序栈的最大容量为MaxSize,则判断栈满的条件是。2.当用长度为MaxSize的数组顺序存储一个栈时,若用top==MaxSize表示栈空,则表示栈满的条件为0&在一个链式栈中,若栈顶指针等于NULL则为o8.
8、在向一个链式栈插入一个新结点时,首先把栈顶指针中存放的结点地址赋给新结点的指针域,然后把新结点的存储位置赋给09.向一个栈顶指针为top的链式栈屮插入一个新结点*p时,应执行和操作。10.从一个栈顶指针为top的非空链式栈中删除结点并不需要返回栈顶结点的值和回收结点时,应执行