[自考类试卷]全国自考数据结构导论(栈和队列)模拟试卷1及答案与解析.doc
《[自考类试卷]全国自考数据结构导论(栈和队列)模拟试卷1及答案与解析.doc》由会员分享,可在线阅读,更多相关《[自考类试卷]全国自考数据结构导论(栈和队列)模拟试卷1及答案与解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、全国自考数据结构导论(栈和队列)模拟试卷 1 及答案与解析一、单项选择题1 栈的顺序表示中,用 top 表示栈顶指针,那么栈空的条件是 _。(A)top=STACKSIZE(B) top=1(C) top=0(D)top=12 一个栈的人栈序列为“abcde”,则以下不可能的出栈序列是 _。(A)bcdae(B) edacb(C) bcade(D)aedcb3 链栈与顺序栈相比,有一个较明显的优点是( )。(A)通常不会出现栈满的情况(B)通常不会出现栈空的情况(C)插入操作更加方便(D)删除操作更加方便4 从栈顶指针为 top 的链栈中删除一个结点,并将被删结点的值保存到 m 中,其操作步骤
2、为_。(A)m=top 一data ;top=top 一next;(B) top=top 一next ;m=top 一data;(C) m=top;top=top 一next;(D)m=top 一data ;5 设有一顺序栈已含 3 个元素,如下图所示,元素 a4 正等待进栈。那么下列 4 个序列中不可能出现的出栈序列是_。(A)a3,a1,a4,a2(B) a3,a2 ,a4 ,a1(C) a3,a4 ,a2 ,a1(D)a4,a3,a2,a16 一个队列的入队序列是“d1,d2,d3,d4,” 则队列的出队顺序是 _(A)d4,d3,d2,d1(B) d1,d2,d3,d4(C) d1,d
3、4,d3,d2(D)d3,d2,d4,d17 假定一个循环队列的队头和队尾指针分别为 P 和 q,则判断队空的条件为_。(A)p=0(B) p+1=q(C) q+1=p(D)p=q8 若以数组 a8存放循环队列的元素,且当前队尾指针 rear 的值为 0,队头指针front 的值为 3。当从队列中出队两个元素,再人队一个元素后,rear 和 front 的值分别为_-。(A)7 和 1(B) 1 和 7(C) 5 和 1(D)1 和 59 若以数组 ak存放循环队列的元素,则当循环队列满时,队列中有_个元素。(A)2k(B) k+1(C) k(D)k 一 110 设数组 A0,m 作为循环队列
4、 sq 的存储空间,front 为队头指针,rear 为队尾指针,则执行入队操作的语句是_。(A)sqfront=(sq front+1)m(B) sqfront=(sqfront+1)(m+1)(C) sqrear=(sqrear+1)m(D)sqrear=(sqrear+1)(m+1)11 若链队列的队头指针和队尾指针分别为 front 和 rear,则从队列中删除一个结点的操作是_。(A)p=front;rear=p 一next ;free(p);(B) p=rear;front=p;free(p);(C) p=front;front=P 一next ;free(p);(D)p=rear
5、;front=P 一next;free(p) ;12 输入序列为 ABC,要变为 CBA,经过的栈操作为 _。(A)push,pop,push,pop,push,pop(B) push, push,push,pop,pop,pop(C) push, push,pop,pop,push ,pop(D)push,pop,push,push,pop,pop13 设有一顺序栈 S,元素 S1,S2,S3,S4,s5, S6 依次进栈,如果 6 个元素出栈的顺序是 s2,s3,S4 ,S6,s5,s1,则栈的容量至少应该是_。(A)2(B) 3(C) 4(D)514 如果以链表作为栈的存储结构,则退栈操
6、作时_。(A)必须判别栈是否满(B)判别栈元素的类型(C)必须判别栈是否空(D)对栈不作任何判别15 前缀表达式“ 一 2+86 3”的运算结果是_ 。(A)1(B) 4(C) 8(D)16二、填空题16 栈的逻辑特点是_,队列的逻辑特点是_;二者的共同点是只允许在它们的_处插入和删除数据元素;其中_可以作为实现递归函数调用的一种数据结构。17 允许在一端插入,在另一端删除的线性表称为_。插入的一端为_,删除的一端为_。18 在一个循环队列 Q 中,判断队空的条件为_ ,判断队满的条件为_。19 判别循环队列空和满的方法有_、_和_。20 已知用数组 sq50存放循环队列的元素,且头指针和尾指
7、针分别为 19 和 2,则该队列的当前长度为_。21 对带有头结点的链队列 lq,判定队列中只有一个数据元素的条件是 _。22 已知链队列 Q 的头、尾指针分别是 front 和 rear,则出队操作是:p=Q 一front;_ ;free(p)。23 一般情况下,将递归算法转化成等价的非递归算法应该设置_。24 对于栈和队列,无论它们采用顺序存储结构还是链式存储结构,进行插入和删除操作的时间复杂度都是_。25 表达式 d(bc)+a 的后缀表达式是_。三、应用题26 从现实生活中举例说明栈和队列的特征。27 举例说明栈的“ 上溢” 、 “下溢”现象以及顺序队的 “假溢出”现象。28 设有编号
8、为 A,B,C,D 的四辆列车,顺序进入一个栈式结构的站台,试写出这四辆列车开出车站的所有可能的顺序。29 对下列函数,画出调用 f(5)时引起的工作栈状态变化情况。int f(int i)if(n=1)return(10);elsereturn(f(i 一 1)+2);30 借助栈(可用栈的基本运算)来实现单链表上的逆置运算。31 用一个循环单链表表示队列,该队列只设一个队尾指针 rear,不设队首指针。试编写算法,完成入队、出队操作。32 试写出一个判别表达式中开、闭括号是否配对出现的算法。33 在栈顶指针为 HS 的链栈中,写出计算该链栈中结点个数的函数。34 设从键盘输入一整数的序列:
9、a 1,a 2,a 3,a n,试编写算法实现:用栈结构存储输入的整数,当 ai一 1 时,将 ai 进栈;当 ai=一 1 时,输入栈顶整数并出栈。算法应对异常情况(如栈满等)给出相应的信息。35 如果希望循环队列中的元素都能得到利用,则需要设置一个标志域 tag,并以tag 的值为 0 或 1 来区分尾指针和头指针值相同时的队列状态是“空” 还是“满”。试编写与此结构相应的入队列和出队列的算法。全国自考数据结构导论(栈和队列)模拟试卷 1 答案与解析一、单项选择题1 【正确答案】 D【知识模块】 栈和队列2 【正确答案】 B【知识模块】 栈和队列3 【正确答案】 A【试题解析】 不管是链栈
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自考 试卷 全国 数据结构 导论 队列 模拟 答案 解析 DOC
