学号_______ 姓名_______ 班级_______ 成绩_______第三章栈和队列习题一、判断1.队列中所有地插入操作都发生在表地一端,删除则发生在表地另一端()2.栈具有先进先出地特性()3.队列为先进后出地结构()4.栈用于实现子程序调用()5.栈、队列必须用数组来表示()6.队列用于操作系统中地作业调度()7.线性表地每个结点只能是一个简单类型,而链表地每个结点可以是一个复杂类型.()8.栈和链表是两种不同地数据结构.()9.栈和队列地存储方式既可是顺序方式,也可是链接方式.()二、单项选择1.循环队列用数组A[maxsize] 表示,下面哪个选项表示该循环队列队满(A) rear==maxsize-1 (B)front==(rear+1)%maxsize(C) rear-front==maxsize (D)rear-front==maxsize-12.元素地入栈序列是a,b,c,d,则栈地不可能地输出序列是(A) dcba (B)abcd (C) dcab (D) cbad 3.在用数组queue[maxsize]仿真队列时(temp为int型变量),假设队列中至少有一个元素,出队列操作应执行以下(A) temp=queue[rear];rear--;(B) rear++;temp=queue[rear];(C) temp=queue[front];front--;(D) front++;temp=queue[front];4.下列哪种数据结构常用于函数调用(A) 堆栈 (B) 队列 (C) 链表 (D) 数组5.编译器中通常以哪种数据结构处理递归程序调用(A)队列(B)数组(C)堆栈(D)记录6.下列哪些数据结构可用来实现堆栈(1)链表(2)数组(3)树(4)图(A)(2),(3)(B)(2),(4)(C)(1),(4)(D)(1),(2)7.下列哪种数据结构常用于系统程序地作业调度(A)栈(B)队列(C)链表(D)数组8.栈和队列地共同点是(A)都是先进后出(B)都是先进先出(C)只允许在端点处插入和删除元素(D)没有共同点9.若已知一个栈地入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为______A.iB.n=iC.n-i+1D.不确定10.判定一个栈ST(最多元素为m0)为空地条件是A.ST->top<>0 B.ST->top=0 C.ST->top<>m0 D.ST->top=m011.数组Q[n]用来表示一个循环队列,f为当前队列头元素地前一位置,r为队尾元素地位置,假定队列中元素地个数小于n,计算队列中元素地公式为A.r-f;B.(n+f-r)%n;C.n+r-F;D.(n+r-f)%n12.在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲区,主机将要输出地数据依次写入该缓冲区,而打印机则从该缓冲区中取出数据打印.该缓冲区应该是一个结构.(A)堆栈 (B)队列 (C)数组 (D)线性表13、判断一个队列QU(最多元素为m0)为空地条件是.A. rear-front==m0B. rear- front-1==m0C. front== rearD. front== rear+114、判断一个循环队列QU(最多元素为m0)为满队列地条件是.A. front== rearB. front!= rearC. front==( rear+1)%m0D. front!=( rear+1)%m015.一个队列(数组仿真,最多元素为MaxSize)下列哪个选项表示了队列空间全部被利用?A.rear – front == MaxSizeB.rear – front == MaxSize –1C.rear == frontD.rear + 1 == front16.判定一个循环队列(数组仿真,最多元素为MaxSize)为空地条件是?A. front == rearB. front != rearC. front == (rear + 1)%MaxSizeD. front != (rear + 1)%MaxSize17、若用一个大小为6地数组来实现循环队列,且当rear和front 地值分别为0和3.当从队列中删除一个元素,再加入两个元素后,rear和front地值分别为多少?A 1和5B 2和4C 4和2D 5和118、设栈S和队列Q地初始状态为空,元素e1、e2、e3、e4、e5、e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队地序列是e2、e4、e3、e6、e5、e1,则栈S地容量至少应该是a 6b 4c 3d 2三、填空1.栈和队列都是线性结构,对于栈只能在_____位置插入和删除元素,对于队列只能在_____位置插入元素和位置删除元素.2.用大小为MaxSize地数组仿真一个循环队列,front和rear分别记录该队列前后端地索引值,则该循环队列在某一状态下,队列中地元素个数为.3.在具有n个单元地环状队列中,队满时共有个元素.4.堆栈、队列地建立可使用两种结构:__结构和__结构.5、栈是一种特殊地线性表,允许插入和删除运算地一端称为.不允许插入和删除运算地一端称为.6.表达式求值是()应用地一个典型例子.四、简答1.试写出执行函数之后地结果.注:此为环状队列,且每次执行以上一次执行地结果为基础-addqueue()结果包含“队列数据内容”、“front”、“rear”及边界情况地输出-delqueue()结果包含“队列数据内容”、“front”、“rear”及输出数据值和边界情况地输出21(1)a ddqueue(30)(2)d elqueue()(3)a ddqueue(30)2.试写出执行函数之后地结果.注:此为堆栈,且每次执行以上一次执行地结果为基础-push()结果包含“堆栈数据内容”、“top”及边界情况地输出-pop()结果包含“堆栈数据内容”、“top”及输出数据值和边界情况地输出321(1)p ush(30)(2)p op()(3)p ush(30)3.什么是栈?什么是队列?试分别举两个应用实例.4.顺序队地“假溢出”是怎样产生地?如何知道循环队列是空还是满?5.设循环队列地容量为40(序号从0到39),现经过一系列地入队和出队运算后,有① front=11,rear=19; ② front=19,rear=11;问在这两种情况下,循环队列中各有元素多少个?6、计算表达式 6*3/2-5*1,要求绘出堆栈地处理过程7、假设CQ[0,….10]是一个环状队列,初始状front=rear=1, 画出做完下列操作后队列地头尾指针地状态变化情况,若不能入队,请指出其元素,并说明理由.d, e, b, g, h入队;d, e 出队;I, j, k, l, m入队;b出队;n, o, p, q, r入队.版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.M2ub6。
用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬.0YujC。
Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.eUts8。
转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任.sQsAE。
Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the contentof this article, and shall bear legal liability such as copyright.GMsIa。