xxxx年计算机考研统考真题.pdfVIP

  • 36
  • 0
  • 约2.92万字
  • 约 23页
  • 2018-12-20 发布于湖北
  • 举报
xxxx年计算机考研统考真题

2011 2011 年计算机考研统考真题 【1】设n 是描述问题规模的非负整数,下面的程序片段的时间复杂度是( )。 x=2; while(xn/2) x=2*x; 2 A.O(log n) B.O(n) C.O(nlog n) D.O(n ) 2 2 【解析】A。容易看出,程序基本操作为x=2*x;基本操作执行的次数即为程序的时间复 杂度,因此可设基本操作执行k 次结束,则有: 1+1 执行第1 次:x=2×2=2 =4; 2+1 执行第2 次:x=4×2=2 =8; 3+1 执行第3 次:x=8×2=2 =16; …… k+1 执行第k 次:x=2 。 由循环结束条件知:xn/2, k+1 即2 n/2 时结束, 即klog n-2, 2 即k=log n+C(为方便说明,其中C 为起修正作用的常数)。 2 综上得:时间复杂度为O(log n)。 2 【2】元素a,b,c,d,e 依次进入初始为空的栈中,若元素进栈后可停留、可出栈,直到所 有元素都出栈,则在所有可能的出栈序列中,以元素d 开头的序列个数是( )。 A.3 B.4 C.5 D.6 【解析】B。若要保证出栈序列以d 开头,则前三个元素必连续进栈,中间不能出现出 栈的情况,然后d 出栈,此时栈内元素由底到顶为,a,b,c,栈外元素为e,出栈序列中元 素为d。 因为a,b,c 三个元素在栈内的顺序已定,由栈的先进后出原则,其在出栈序列中的相 对位置必为…c…b…a…;加上d 的位置已定,所以出栈待定序列必为d…c…b…a…。显 然在栈外的e 可以在任何时候出栈入栈,即可以出现在以上待定序列中任何一个省略号的 位置,即出栈序列可为: 1:d,e,c,b,a; 2:d,c,e,b,a; 3:d,c,b,e,a; 4:d,c,b,a,e。 【3】已知循环队列存储在一维数组A[0…n-1]中,且队列非空时front 和rear 分别指向 队头和队尾元素。若初始时队列为空,且要求第1 个进入队列的元素存储在A[0]处,则初 始时front 和rear 的值分别是( )。 A.0,0 B.0,n-1 C.n-1,0 D,n-1,n-1 【解析】B。插入元素时,front 不变,rear+1.而插入第一个元素后,队尾要指向尾 元素,显然,rear 初始应该为n-1,front 为0。 【4】若一棵完全二叉树有768 个结点,则该二叉树中叶子结点的个数是( )。 A.257 B.258 C.384 D.385 【解析】C。由完全二叉树的高度和结点个数的关系可得本完全二叉树的高度为10。第 9 10 层上的结点个数为768-(2 -1)=257(这些全为叶子结点);第9 层上的非叶结点为 9-1 (257-1)/2+1=129;则第9 层上的叶子结点个数为:2 -129=127;则叶子结点总数为 257+127=384。 【5】若一棵二叉树的前序遍历序列和后序遍历序列分别为1,2,3,4 和4,3,2,1,则该二 叉树的中序遍历序列不会是( )。 A.1,2,3,4 B.2,3,4,1 C.3,2,4,1

文档评论(0)

1亿VIP精品文档

相关文档