答题: A. B. C. D. (已提交) 参考答案:D 问题解析: 6. 设有4个数据元素a1、a2、a3和a4,对他们分别进行栈操作或队操作。在进栈或进队操作时,按a1、a2、a3、a4次序每次进入一个元素。假设栈或队的初始状态都是空。 现要进行的栈操作是进栈两次,出栈一次,再进栈两次,出栈一次;这时,第一次出栈得到的元素是 a ,第二次出栈得到的元素是 b 是;类似地,考虑对这四个数据元素进行的队操作是进队两次,出队一次,再进队两次,出队一次;这时,第一次出队得到的元素是 c ,第二次出队得到的元素是 d 。经操作后,最后在栈中或队中的元素还有 e 个。 供选择的答案: a~d:①a1 ②a2 ③ a3 ④a4 e: ①1 ②2 ③ 3 ④ 0 A. a=2,b=2,c=1,d=3,e=2 B. a=2,b=2,c=2,d=4,e=3 C. a=2,b=4,c=1,d=2,e=2 D. a=2,b=2,c=1,d=4,e=4 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 7. 栈是一种线性表,它的特点是 a 。设用一维数组A[1,…,n]来表示一个栈,A[n]为栈底,用整型变量T指示当前栈顶位置,A[T]为栈顶元素。往栈中推入(PUSH)一个新元素时,变量T的值 b ;从栈中弹出(POP)一个元素时,变量T的值 c 。设栈空时,有输入序列a,b,c,经过PUSH,POP,PUSH,PUSH,POP操作后,从栈中弹出的元素的序列是 d ,变量T的值是 e 。 供选择的答案: a: ① 先进先出 ②后进先出 ③进优于出 ④出优于进 ⑤ 随机进出 b,c: ① 加1 ②减1 ③不变 ④清0 ⑤ 加2 ⑥减2 d:① a,b ②b,c ③c,a ④b,a ⑤ c,b ⑥ a,c e:① n+1 ②n+2 ③ n ④ n-1 ⑤ n-2 注意,向地址的高端生长,称为向上生成堆栈;向地址低端生长叫向下生成堆栈,本题中底部为n,向地址的低端递减生成,称为向下生成堆栈。 A. a=2,b=2,c=1,d=6,e=4 B. a=2,b=1,c=2,d=4,e=5 C. a=1,b=2,c=2,d=5,e=6 D. a=2,b=2,c=1,d=5,e=4 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 8. 在做进栈运算时,应先判别栈是否 a ;在做退栈运算时,应先判别栈是否 b 。当栈中元素为n个,做进栈运算时发生上溢,则说明该栈的最大容量为 c 。 为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的内存空间时,应将两栈的 d 分别设在这片内存空间的两端,这样,只有当 e 时,才产生上溢。 供选择的答案: a,b:①空 ② 满 ③ 上溢 ④ 下溢 c:①n-1 ② n ③ n+1 ④ n/2 d:① 长度 ②深度 ③ 栈顶 ④ 栈底 e:①两个栈的栈顶同时到达栈空间的中心点 ②其中一个栈的栈顶到达栈空间的中心点 ③两个栈的栈顶在达栈空间的某一位置相遇 ④两个栈均不空,且一个栈的栈顶到达另一个栈的栈底 A. a=2,b=2,c=1,d=3,e=4 B. a=2,b=1,c=2,d=4,e=3 C. a=1,b=2,c=2,d=3,e=4 D. a=2,b=2,c=1,d=3,e=4 答题: A. B. C. D. (已提交) 参考答案:B 问题解析: 9. 消除递归不一定需要使用栈,此说法。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 10. 栈是实现过程和函数等子程序所必需的结构。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 11. 两个栈共用静态存储空间,对头使用也存在空间溢出问题。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 12. 两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 13. 即使对不含相同元素的同一输入序列进行两组不同的合法的入栈和出栈组合操作,所得的输出序列也一定相同。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 14. 有n个数顺序(依次)进栈,出栈序列有Cn种,Cn=[1/(n+1)]*(2n)!/[(n!)*(n!)]。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 15. 栈与队列是一种特殊操作的线性表。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 16. 若输入序列为1,2,3,4,5,6,则通过一个栈可以输出序列3,2,5,6,4,1。 ( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 17. 栈和队列都是限制存取点的线性结构。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 18. 若输入序列为1,2,3,4,5,6,则通过一个栈可以输出序列1,5,4,6,2,3。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 19. 任何一个递归过程都可以转换成非递归过程。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 20. 只有那种使用了局部变量的递归过程在转换成非递归过程时才必须使用栈。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 21. 队列是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 22. 通常使用队列来处理函数或过程的调用。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 23. 队列逻辑上是一个下端和上端既能增加又能减少的线性表。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 24. 循环队列通常用指针来实现队列的头尾相接。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 25. 循环队列也存在空间溢出问题。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 26. 队列和栈都是运算受限的线性表,只允许在表的两端进行运算。( ) 答题: 对. 错. (已提交) 参考答案:× 问题解析: 27. 栈和队列都是线性表,只是在插入和删除时受到了一些限制。( ) 答题: 对. 错. (已提交) 参考答案:√ 问题解析: 第四章 串 本次练习有10题,你已做10题,已提交10题,其中答对2题。 当前页有10题,你已做10题,已提交10题,其中答对2题。 1. 下面关于串的的叙述中,哪一个是不正确的?( ) A.串是字符的有限序列 B.空串是由空格构成的串 C.模式匹配是串的一种重要运算 D.串既可以采用顺序存储,也可以采用链式存储 答题: A. B. C. D. (已提交) 参考答案:B 问题解析: 2. 若串S1=‘ABCDEFG’, S2=‘9898’,S3=‘###’,S4=‘012345’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2))) 其结果为()。 A.ABC###G0123 B.ABCD###2345 C.ABC###G2345 D.ABC###2345 E.ABC###G1234 F.ABCD###1234 G.ABC###01234 答题: A. B. C. D. E. F. G. (已提交) 参考答案:E 问题解析: 3. 设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为( )。 A.求子串 B.联接 C.匹配 D.求串长 答题: A. B. C. D. (已提交) 参考答案:C 问题解析: 4. 已知串S='aaab',其Next数组值为( )。 A.0123 B.1123 C.1231 D.1211 答题: A. B. C. D. (已提交) 参考答案:A 问题解析: 5. 串'ababaaababaa' 的next数组为( )。 A.012345678999 B.012121111212 C.011234223456 D.0123012322345
相关推荐: