ImageVerifierCode 换一换
你正在下载:

试题3.docx

[预览]
格式:DOCX , 页数:25 ,大小:33.90KB ,
资源ID:10739759      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10739759.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(试题3.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

试题3.docx

1、试题3第3章 栈和队列一 选择题1. 对于栈操作数据的原则是( )。【青岛大学 2001 五、2(2分)】A. 先进先出 B. 后进先出 C. 后进后出 D. 不分顺序2. 在作进栈运算时,应先判别栈是否( ),在作退栈运算时应先判别栈是否( )。当栈中元素为n个,作进栈运算时发生上溢,则说明该栈的最大容量为( )。为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的内存空间时,应将两栈的 ( )分别设在这片内存空间的两端,这样,当( )时,才产生上溢。 , : A. 空 B. 满 C. 上溢 D. 下溢 : A. n-1 B. n C. n+1 D. n/2 : A. 长度 B

2、. 深度 C. 栈顶 D. 栈底 : A. 两个栈的栈顶同时到达栈空间的中心点.B. 其中一个栈的栈顶到达栈空间的中心点. C. 两个栈的栈顶在栈空间的某一位置相遇. D. 两个栈均不空,且一个栈的栈顶到达另一个栈的栈底.【上海海运学院 1997 二、1(5分)】【上海海运学院 1999 二、1(5分)】3. 一个栈的输入序列为123n,若输出序列的第一个元素是n,输出第i(1=i0) ? x* f(x-1):2); int i ; i =f(f(1);A2 B. 4 C. 8 D. 无限递归19. 表达式a*(b+c)-d的后缀表达式是( )。【南京理工大学 2001 一、2(1.5分)】A

3、abcd*+- B. abc+*d- C. abc*+d- D. -+*abcd20. 表达式3* 2(4+2*2-6*3)-5求值过程中当扫描到6时,对象栈和算符栈为( ),其中为乘幂 。A. 3,2,4,1,1;(*(+*- B. 3,2,8;(*- C. 3,2,4,2,2;(*(- D. 3,2,8;(*(-【青岛大学 2000 五、5(2分)】21. 设计一个判别表达式中左,右括号是否配对出现的算法,采用( )数据结构最佳。A线性表的顺序存储结构 B. 队列 C. 线性表的链式存储结构 D. 栈【西安电子科技大学 1996 一、6(2分)】22. 用链接方式存储的队列,在进行删除运算

4、时( )。【北方交通大学 2001 一、12(2分)】A. 仅修改头指针 B. 仅修改尾指针 C. 头、尾指针都要修改 D. 头、尾指针可能都要修改23. 用不带头结点的单链表存储队列时,其队头指针指向队头结点,其队尾指针指向队尾结点,则在进行删除操作时( )。【北京理工大学 2001 六、3(2分)】A仅修改队头指针 B. 仅修改队尾指针 C. 队头、队尾指针都要修改 D. 队头,队尾指针都可能要修改24. 递归过程或函数调用时,处理参数及返回地址,要用一种称为( )的数据结构。A队列 B多维数组 C栈 D. 线性表【福州大学 1998 一、1(2分)】25. 假设以数组Am存放循环队列的元

5、素,其头尾指针分别为front和rear,则当前队列中的元素个数为( )。【北京工商大学 2001 一、2(3分)】A(rear-front+m)%m Brear-front+1 C(front-rear+m)%m D(rear-front)%m26. 循环队列A0.m-1存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是( )。【南京理工大学 2001 一、5(1.5分)】A. (rear-front+m)%m B. rear-front+1 C. rear-front-1 D. rear-front27. 循环队列存储在数组A0.m中,则入队时的操作为( )。【

6、中山大学 1999 一、6(1分)】A. rear=rear+1 B. rear=(rear+1) mod (m-1) C. rear=(rear+1) mod m D. rear=(rear+1)mod(m+1) 28. 若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为多少?( )【浙江大学1999 四、1(4分)】A. 1和 5 B. 2和4 C. 4和2 D. 5和1 29. 已知输入序列为abcd 经过输出受限的双向队列后能得到的输出序列有( )。 A. dacb B. cadb

7、C. dbca D. bdac E. 以上答案都不对 【西安交通大学 1996 三、3 (3分)】30. 若以1234作为双端队列的输入序列,则既不能由输入受限的双端队列得到,也不能由输出受限的双端队列得到的输出序列是( )。【西安电子科技大学 1996 一、5(2分)】A. 1234 B. 4132 C. 4231 D. 4213 31. 最大容量为n的循环队列,队尾指针是rear,队头是front,则队空的条件是 ( )。 A. (rear+1) MOD n=front B. rear=front Crear+1=front D. (rear-l) MOD n=front【南京理工大学 1

8、999 一、16(2分)】32. 栈和队列的共同点是( )。【燕山大学 2001 一、1(2分)】A. 都是先进先出 B. 都是先进后出 C. 只允许在端点处插入和删除元素 D. 没有共同点33. 栈的特点是( ),队列的特点是( ),栈和队列都是( )。若进栈序列为1,2,3,4 则( )不可能是一个出栈序列(不一定全部进栈后再出栈);若进队列的序列为1,2,3,4 则( )是一个出队列序列。【北方交通大学 1999 一、1(5分)】, : A. 先进先出 B. 后进先出 C. 进优于出 D. 出优于进: A.顺序存储的线性结构 B.链式存储的线性结构 C.限制存取点的线性结构 D.限制存取

9、点的非线性结构, : A. 3,2,1,4 B. 3,2,4,1 C. 4,2,3,1 D. 4,3,2,1 F. 1,2,3,4 G. 1,3,2,434. 栈和队都是( )【南京理工大学 1997 一、3(2分)】A顺序存储的线性结构 B. 链式存储的非线性结构C. 限制存取点的线性结构 D. 限制存取点的非线性结构35. 设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5和e6依次通过栈S,一个元素出栈后即进队列Q,若6个元素出队的序列是e2,e4,e3,e6,e5,e1则栈S的容量至少应该是( )。A 6 B. 4 C. 3 D. 2【南京理工大学 2000 一、6(1.5

10、分)】36. 用单链表表示的链式队列的队头在链表的( )位置。【清华大学 1998 一、1(2分)】A链头 B链尾 C链中37. 依次读入数据元素序列a,b,c,d,e,f,g进栈,每进一个元素,机器可要求下一个元素进栈或弹栈,如此进行,则栈空时弹出的元素构成的序列是以下哪些序列?【哈尔滨工业大学 2000 七(8分)】Ad ,e,c,f,b,g,a B. f,e,g,d,a,c,bC. e,f,d,g,b,c,a D. c,d,b,e,f,a,g二 判断题1. 消除递归不一定需要使用栈,此说法( )【中科院计算所 1998 二、2(2分)】【中国科技大学 1998 二、2(2分)】2. 栈是

11、实现过程和函数等子程序所必需的结构。( )【合肥工业大学 2000 二、2(1分)】3. 两个栈共用静态存储空间,对头使用也存在空间溢出问题。( )【青岛大学 2000 四、2(1分)】4两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。( )【上海海运学院 1998 一、4(1分)】5. 即使对不含相同元素的同一输入序列进行两组不同的合法的入栈和出栈组合操作,所得的输出序列也一定相同。( )【北京邮电大学 1999 二、4(2分)】6. 有n个数顺序(依次)进栈,出栈序列有Cn种,Cn=1/(n+1)*(2n)!/(n!)*(n!)。(

12、 )【北京邮电大学 1998 一、3(2分)】7. 栈与队列是一种特殊操作的线性表。( )【青岛大学 2001 四、3 (1分)】8. 若输入序列为1,2,3,4,5,6,则通过一个栈可以输出序列3,2,5,6,4,1. ( )【上海海运学院1995 一、2(1分) 1997 一、3(1分)】9. 栈和队列都是限制存取点的线性结构。( )【中科院软件所 1999 六、(5)(2分)】10若输入序列为1,2,3,4,5,6,则通过一个栈可以输出序列1,5,4,6,2,3。( )【上海海运学院 1999 一、3(1分)】11. 任何一个递归过程都可以转换成非递归过程。()【上海交通大学 1998一

13、、3(1分)】12. 只有那种使用了局部变量的递归过程在转换成非递归过程时才必须使用栈。()【上海交通大学 1998 一、4(1分)】13. 队列是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。( )【上海海运学院 1998 一、3(1分)】14. 通常使用队列来处理函数或过程的调用。( )【南京航空航天大学 1997 一、5(1分)】15. 队列逻辑上是一个下端和上端既能增加又能减少的线性表。( )【上海交通大学 1998 一、2】16. 循环队列通常用指针来实现队列的头尾相接。( )【南京航空航天大学 1996 六、1(1分)】17. 循环队列也存在空间溢出问题。(

14、)【青岛大学 2002 一、2 (1分)】18. 队列和栈都是运算受限的线性表,只允许在表的两端进行运算。( )【长沙铁道学院1997一、5(1分)】19. 栈和队列都是线性表,只是在插入和删除时受到了一些限制。( )【北京邮电大学2002一、3(1分)】20. 栈和队列的存储方式,既可以是顺序方式,又可以是链式方式。( )【上海海运学院 1996 一、2(1分) 1999 一、2(1分)】三 填空题 1栈是_的线性表,其运算遵循_的原则。【北京科技大学 1997 一、3】2_是限定仅在表尾进行插入或删除操作的线性表。【燕山大学 1998 一、3 (1分)】3. 一个栈的输入序列是:1,2,3

15、则不可能的栈输出序列是_。【中国人民大学2001一、1(2分)】4. 设有一个空栈,栈顶指针为1000H(十六进制),现有输入序列为1,2,3,4,5,经过PUSH,PUSH,POP,PUSH,POP,PUSH,PUSH之后,输出序列是_,而栈顶指针值是_H。设栈为顺序栈,每个元素占4个字节。【西安电子科技大学 1998 二、1(4分)】5. 当两个栈共享一存储区时,栈利用一维数组stack(1,n)表示,两栈顶指针为top1与top2,则当栈1空时,top1为_,栈2空时 ,top2为_,栈满时为_。【南京理工大学 1997 三、1(3分)】6两个栈共享空间时栈满的条件_。【中山大学 199

16、8 一、3(1分)】7在作进栈运算时应先判别栈是否_(1)_;在作退栈运算时应先判别栈是否_(2)_;当栈中元素为n个,作进栈运算时发生上溢,则说明该栈的最大容量为_(3)_。为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的空间时,应将两栈的_(4)_分别设在内存空间的两端,这样只有当_(5)_时才产生溢出。【山东工业大学 1994 一、1(5分)】8. 多个栈共存时,最好用_作为存储结构。【南京理工大学 2001 二、7(2分)】9用S表示入栈操作,X表示出栈操作,若元素入栈的顺序为1234,为了得到1342出栈顺序,相应的S和X的操作串为_。【西南交通大学 2000 一、

17、5】10. 顺序栈用data1.n存储数据,栈顶指针是top,则值为x的元素入栈的操作是_。【合肥工业大学 2001 三、2 (2分)】11表达式23+(12*3-2)/4+34*5/7)+108/9的后缀表达式是_。【中山大学 1998 一、4(1分)】12. 循环队列的引入,目的是为了克服_。【厦门大学 2001 一、1 (14/8分)】 13用下标0开始的N元数组实现循环队列时,为实现下标变量M加1后在数组有效下标范围内循环,可采用的表达式是:M:=_(填PASCAL语言,C语言的考生不填); M= _(填C语言,PASCAL语言的考生不填)。【西南交通大学 2000 一、7】14_又称

18、作先进先出表。【重庆大学 2000 一、7】15. 队列的特点是_。【北京理工大学 2000 二、2(2分)】16队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是_。【北方交通大学 2001 二、5】17. 已知链队列的头尾指针分别是f和r,则将值x入队的操作序列是_。【合肥工业大学 2000 三、3(2分)】18区分循环队列的满与空,只有两种方法,它们是_和_。【北京邮电大学2001 二、2(4分)】19设循环队列用数组A1.M表示,队首、队尾指针分别是FRONT和TAIL,判定队满的条件为_。【山东工业大学 1995 一、1(1分)】20. 设循环队列存放在向量sq.

19、data0:M中,则队头指针sq.front在循环意义下的出队操作可表示为_,若用牺牲一个单元的办法来区分队满和队空(设队尾指针sq.rear),则队满的条件为_。【长沙铁道学院 1997 二、4 (4分)】21表达式求值是_应用的一个典型例子。【重庆大学 2000 一、10】22循环队列用数组A0.m-1存放其元素值,已知其头尾指针分别是front和rear ,则当前队列的元素个数是_。【厦门大学 2000 六、1(16%/3分)】23设Q0.N-1为循环队列,其头、尾指针分别为P和R,则队Q中当前所含元素个数为_。【北京科技大学 1997 一、4】24完善下面算法。【中山大学 1998 四

20、、2(6分)】后缀表达式求值,表达式13/25+61的后缀表达式格式为: 13, 25/61, +FUNC compute(a):real; 后缀表达式存储在数组a1.m中。BEGIN setnull(s);i:=1;ch:= (1)_; WHILE ch DO BEGIN CASE ch OF 0.9: x:=0; WHILE ch,DO BEGIN x:=x*10+ord(ch)-ord(0); i:=i+1;ch:= (2)_; END+: x:=pop(s)+pop(s);-: x:=pop(s);x:=pop(s)-x;*: x:=pop(s)*pop(s);/: x:=pop(s)

21、;x:=pop(s)/x;ENDCASEpush(s,x);i:=i+1;ch:=ai;END;comput:= (3)_;END;25. 算术表达式求值的流程,其中OPTR为算术符栈,OPND为操作数栈,precede(oper1,oper2)是比较运算符优先级别的函数,operate(opnd1,oper,opnd2)为两操作数的运算结果函数。(#表示运算起始和终止符号)【西北工业大学 1999 六、2 (7分)】 FUNCTION exp_reduced:operandtype; INITSTACK(OPTR);PUSH(OPTR#);INITSTACK(OPND);read(w); W

22、HILE NOT(w=#) AND (GETTOP(OPTR)=#) DO IF NOT w in op THEN PUSH(OPND,w); ELSE CASE precede(GETTOP(OPTR),w)OF :theta:=POP(OPTR);b:=POP(OPND);a:=POP(OPND);(3)_; ENDC;RETURN(GETTOP(OPND);ENDF; 26根据需要,用适当的语句填入下面算法的_中:问题:设有n件物品,重量分别为w1,w2,w3,wn和一个能装载总重量为T的背包。能否从n件物品中选择若干件恰好使它们的重量之和等于T。若能,则背包问题有解,否则无解。解此问题

23、的算法如下: FUNCTION kanp_stack(VAR stack,w:ARRAY1.n OF real; VAR top:integer; T:real):boolean; w1:n 存放n件物品的重量,依次从中取出物品放入背包中,检查背包重量,若不超过T,则装入,否则弃之,取下一个物品试之。若有解则返回函数值true,否则返回falseBEGIN top:=0; i:=1; i指示待选物品 WHILE (1)_ AND(2)_DO IF (3)_ OR (4)_ AND (i0) THEN i:=(7)_;取出栈顶物品 top:= (8)_ ;T:= (9)_ ; 恢复T值 i:=i+1 准备挑选下一件物品 ; ; RETURN(10)_) 背包无解END;【北京邮电大学 1996 四(10分)】四 应用题1. 名词解释:栈。【燕山大学 1999 一、1(2分)】【吉林工业大学 1999 一、3(2分)】2. 名词解释:队列【大连海事大学 1996 一、6

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1