国家二级VB机试(公共基础知识)模拟试卷10
选择题
1.下列叙述中正确的是( )。(A)
A. 算法的复杂度包括时间复杂度与空间复杂度
B. 算法的复杂度是指算法控制结构的复杂程度
C. 算法的复杂度是指算法程序中指令的数量
D. 算法的复杂度是指算法所处理的数据量
解析:算法复杂度是指算法在编写成可执行程序后,运行时所需要的资源,资源包括时间资源和内存资源。算法的复杂度包括时间复杂度与空间复杂度。算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度是指算法在执行过程中所需要的内存空间。
2.下列叙述中正确的是( )。(B)
A. 矩阵是非线性结构
B. 数组是长度固定的线性表
C. 对线性表只能作插入与删除运算
D. 线性表中各元素的数据类型可以不同
解析:矩阵也是线性表,只不过是比较复杂的线性表。线性表中各元素的数据类型必须相同。在线性表中,不仅可以做插入与删除运算,还可以进行查找或对线性表进行排序等操作。
3.设栈的顺序存储空间为S(1:m),初始状态为top=0。现经过一系列正常的入栈与退栈操作后,top=m+1,则栈中的元素个数为( )。(C)
A. 0
B. m
C. 不可能
D. m+1
解析:栈为空时,栈顶指针top=0,经过入栈和退栈运算,指针始终指向栈顶元素。初始状态为top=0,当栈满top=m,无法继续入栈,top值不可能为m+1。
4.设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。现经过一系列入队与退队操作后,front=rear=1,此后又正常地插入了两个元素。最后该队列中的元素个数为( )。(C)
A. 3
B. 1
C. 2
D. 52
解析:由初始状态为front=rear=50可知此时循环队列为空。经过一系列正常的入队和退队操作,由front=rear=1可知队列空或者队列满,此后又可以正常地插入了两个元素,说明插入前队列为空,则插入后队列元素个数为2。
5.下列叙述中正确的是( )。(B)
A. 结点中具有两个指针域的链表一定是二叉链表
B. 结点中具有两个指针域的链表可以是线性结构,也可以是非线性结构
C. 循环链表是循环队列的链式存储结构
D. 循环链表是非线性结构
解析:结点中具有两个指针域的链表既可以是双向链表也可以是二叉链表,双向链表是线性结构,二叉链表属于非线性结构。循环链表是线性链表的一种形式,属于线性结构,采用链式存储结构,而循环队列是队列的一种顺序存储结构。
6.某带链的队列初始状态为front=rear=NULL。经过一系列正常的入队与退队操作后,front=10,rear=5。该队列中的元素个数为( )。(D)
A. 4
B. 5
C. 6
D. 不确定
解析:带链的队列使用了链表来表示队列,而链表中的元素存储在不连续的地址中,因此当front=10,rear=5时,不能确定队列中元素的个数。
7.深度为7的二叉树共有127个结点,则下列说法中错误的是( )。(B)
A. 该二叉树是满二叉树
B. 该二叉树有一个度为1的结点
C. 该二叉树是完全二叉树
D. 该二叉树有64个叶子结点
解析:满二叉树满足深度为m的二叉树最多有2m-1个结点,本题中二叉树深度为7且有127个结点,满足2T-1=127,达到最大值,故此二叉树为满二叉树,也是完全二叉树。满二叉树第k层上有2k-1结点,则该二叉树的叶子结点数为27-1=64个。满二叉树不存在度为1的结点。
8.下列叙述中正确的是( )。(C)
A. 非完全二叉树可以采用顺序存储结构
B. 有两个指针域的链表就是二叉链表
C. 有的二叉树也能用顺序存储结构表示
D. 顺序存储结构一定是线性结构
解析:在计算机中,二叉树为非线性结构,通常采用链式存储结构,但对于满二叉树和完全二叉树来说,可以按层进行顺序存储。因此A项错误,C项正确。虽然满二叉树和完全二叉树可以采用顺序存储结构,但仍是一种非线性结构,因此D项错误。双向链表也有两个指针域,因此B项错误。
9.某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的深度(根结点在第1层)为( )。(C)
A. 2
B. 3
C. 4
D. 5
解析:二叉树的前序序列为ABCDEFG,则A为根结点;中序序列为DCBAEFG,可知结点D、C、B位于根结点的左子树上,结点E、F、G位于根结点的右子树上。另外,结点B、C、D在前序序列和中序序列中顺序相反,则说明这三个结点依次位于前一个结点的左子树上;结点E、F、G顺序未变,则说明这三个结点依次位于前一个结点的右子树上。故二叉树深度为4。
10.在长度为n的顺序表中查找一个元素,假设需要查找的元素一定在表中,并且元素出现在表中每个位置上的可能性是相同的,则在平均情况下需要比较的次数为( )。(D)
A. n/4
B. n
C. 3n/4
D. (n+1)/2
解析:在顺序表中查找,最好情况下第一个元素就是要查找的元素,则比较次数为1;在最坏情况下,最后一个元素才是要找的元素,则比较次数为n。则平均比较次数:(1+2+…+n)/n=(n(n+1)/2)/n=(n+1)/2。
11.下列叙述中正确的是( )。(A)
A. 二分查找法只适用于顺序存储的有序线性表
B. 二分查找法适用于任何存储结构的有序线性表
C. 二分查找法适用于有序循环链表
D. 二分查找法适用于有序双向链表
解析:二分查找法(又称对分查找法)只适用于顺序存储的有序表。在此所说的有序表是指线性表的中元素按值非递减排列(即从小到大,但允许相邻元素值相等)。
12.设顺序表的长度为16,对该表进行简单插入排序。在最坏情况下需要的比较次数为( )。(A)
A. 120
B. 60
C. 30
D. 15
解析:简单插入排序在最坏情况下,即初始排序序列是逆序的情况下,比较次数为n(n-1)/2,移动次数为n(n-1)/2。本题中n=16,16×(16-1)/2=8×15=120。
13.下面对“对象”概念描述正确的是( )。(B)
A. 属性就是对象
B. 操作是对象的动态属性
C. 任何对象都必须有继承性
D. 对象是对象名和方法的封装体
解析:对象是由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。对象可以做的操作表示它的动态行为,通常也称为方法或服务,属性即对象所包含的信息。对象名唯一标识一个对象。对象可以有继承性,但并不是任何对象都必须有继承性。
14.下面对软件特点描述正确的是( )。(D)
A. 软件具有明显的制作过程
B. 软件在使用中存在磨损、老化问题
C. 软件复制不涉及知识产权
D. 软件是一种逻辑实体,具有抽象性
解析:软件具有以下特点:软件是一种逻辑实体,而不是物
本文档预览:3600字符,共7708字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载