模拟试题2014_3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构模拟试题2014_3参考答案
一、单项选择题(1分×11=11分)
1.数据结构在计算机内存中的表示是指(B )。
A.数据的逻辑结构B.数据的存储结构
C.数据的逻辑结构和存储结构D.数据元素之间的关系
2.算法分析的两个主要方面是(D )。
A.可读性和文档性B.数据复杂性和程序复杂性
C.正确性和简明性D.空间复杂度和时间复杂度
3.栈和队列的共同点是(A )。
A.只允许在端点处插入和删除元素B.都是先进后出
C.都是先进先出D.没有共同点
4.串是一种特殊的线性表,其特殊性体现在串操作的对象是(B )。
A.一个字符B.字符串或子串
C.串中的多个字符D.字符数组
5.设矩阵A是一个n阶对称阵,为了节省存储空间,将其下三角部分按行存放在一个一维
,在一维数组B中相数组B[n(n+1)/2]中,对A的任一下三角部分中的元素()0
a
n
≥
≥
>j
i
ij
对应的下标k的值是( D )。
A.i(i-1)/2+j-1 B.i(i-1)/2+j C.i(i+1)/2+j-1 D.i(i+1)/2+j
6.一维数组和线性表的主要区别是(D )。
A.两者长度均可变B.后者长度固定,前者长度可变
C.两者长度均固定D.前者长度固定,后者长度可变
7.树最适合用来表示( D )。
A.有序数据元素B.元素之间无联系的数据
C.无序数椐元素D.元素之间具有分支层次关系的数据
8.如果T2是由有序树T1转换而来的二叉树,那么T2中结点的先序遍历序列就是T1中结点的( B )。
A.层次遍历序列B.先根遍历序列
C.中序遍历序列D.后根遍历序列
9.对于具有n个顶点的无向图,采用邻接矩阵表示,则该矩阵的大小是(D )。
A.n B.(n-1)*(n-1) C.n-1 D.n*n
10.在下列算法中,( C )算法可能出现下列情况:在最后一趟开始之前,所有的元素都不在其最终的位置上。
A.堆排序B.冒泡排序C.插入排序D.快速排序
11.对记录的关键字为{25,84,21,47,15,27,86,35,20}进行排序,各趟排序结束时的结果为:
25,84,21,47,15,27,68,35,20
20,15,21,25,47,27,86,35,84
15,20,21,25,35,27,47,68,84
15,20,21,25,27,35,47,68,84
其使用的排序方法是( A )。
A.快速排序法B.基数排序法C.希尔排序法D.归并排序法
二、填空题(2分×11=22分)
1.求下面程序段的时间复杂度T(n):
(1) i=1; while(i<=n)i=i*2; 时间复杂度是( )(log 2n O )。
(2) x=n,y=0; while(x>=(y+1)*(y+1))y++; 时间复杂度是( ()
n O )。
(3) void Sort(int A[],int n)
{int i,f=1,t,j; for(i=0;i
if(A[j]>A[j-1]){f=1; t=A[j];A[j]=A[j-1];A[j-1]=t;}} }
时间复杂度是( )(2n O )。
2.顺序表中逻辑上相邻的数据元素的物理位置( 也一定 )紧邻;单链表中逻辑上相邻的数据元素的物理位置( 不一定 )紧邻。
3.按二叉树的定义,具有A 、B 、C 3个不同结点的二叉树有( 30 )种。
4.线性表、栈和队列都是( 线性 )结构,可以在线性表的( 任一 )位置插入和删除数据元素;对于栈只能在( 栈顶 )位置插入和删除数据元素;对于队列只能在(队尾 )位置插入数据元素和在( 队头 )位置删除元素。
5.常对数组进行的两种基本操作是(根据下标对元素进行存取 )操作,和(根据下标对元素进行修改 )操作。
6.已知广义表L=(apple,(pear),((banana)),(((orange))))。利用GetHead 【】和GetTail 【】操作把banana 分离出来的函数表达式是:
( GetHead 【GetHead 【GetHead 【GetTail 【GetTail 【L 】】】】】 )。
7.已知一棵树的边的集合表示为:
{
9.前序序列和中序序列相同的二叉树的特点是
( 二叉树中所有的结点均无左孩子 );
中序序列和后序序列相同的二叉树的特点是
( 二叉树中所有的结点均无右孩子 );
前序序列和后序序列相同的二叉树的特点是
( 该二叉树为空树或只有根结点 )。
10.一个无向图如图2.10所示,从顶点v1开始按编号递增的顺序进行遍历,其深度优先遍历序列是(v1,v2,v5,v3,v4);广度优先遍历序列是(v1,v2,v3,v5,v4)
11.一组记录的关键字为:{66,46,79,56,38,40,74} 则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为:( 40,46,38,56,66,79,74 )。
三、程序阅读题(5分×4=20分)
1.画出执行下列各行语句后各指针及链表的示意图。
(1).画出以下程序段运行结果的示意图。
LinkList L=new LNode,p=L;
int i;