精品文档
?/p>
1
欢迎下载
数据结构章节练习?/p>
第一?/p>
?/p>
?/p>
一、单选题
1.
一个数组元?/p>
a[i]
?/p>
________
的表示等价?/p>
A
?/p>
*(a+i) B
?/p>
a+i C
?/p>
*a+i D
?/p>
&a+i
2.
下面程序段的时间复杂度为
____________
?/p>
for(int i=0; i<m; i++)
for(int j=0; j<n; j++)
a[i][j]=i*j;
A
?/p>
O(m2) B
?/p>
O(n2) C
?/p>
O(m*n) D
?/p>
O(m+n)
3.
执行下面程序段时,执?/p>
S
语句的次数为
____________
?/p>
for(int i=1; i<=n; i++)
for(int j=1; j<=i; j++)
S;
A
?/p>
n2 B
?/p>
n2/2 C
?/p>
n(n+1) D
?/p>
n(n+1)/2
4.
下面算法的时间复杂度?/p>
____________
?/p>
int f( unsigned int n )
{ if ( n==0 || n==1 ) return 1; else return n*f(n-1); }
A
?/p>
O(1) B
?/p>
O(n) C
?/p>
O(n2) D
?/p>
O(n!)
二、填空题
1.
数据的逻辑结构被分?/p>
__________
?/p>
_________
?/p>
__________
?/p>
__________
四种?/p>
2.
数据的存储结构被分为
__________
、和
__________
两种?/p>
3.
在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着
________
?/p>
________
?/p>
________
的联系?/p>
4.
一种抽象数据类型包?/p>
__________
?/p>
__________
两个部分?/p>
5.
当一个形参类型的长度较大时,应最好说明为
_________
,以节省参数值的传输时间和存储参
数的空间?/p>
6.
当需要用一个形参访问对应的实参时,则该形参应说明为
__________
?/p>
7.
在函数中对引用形参的修改就是对相?/p>
__________
的修改,
?/p>
__________
形参的修改只局限在
该函数的内部,不会反映到对应的实参上?/p>
8.
当需要进行标?/p>
I/O
操作时,
则应在程序文件中包含
________________
头文件,
当需要进行文
?/p>
I/O
操作时,则应在程序文件中包含
________________
头文件?/p>
9.
在包含有
________________
头文件的程序文件中,使用
________________
能够产生?/p>
0
?/p>
20
之间的一个随机整数?/p>
10.
一个数?/p>
a
所占有的存储空间的大小即数组长度为
____________
?/p>
下标?/p>
i
的元?/p>
a[i]
的存
储地址?/p>
__________
,或者为
______________________________
?/p>
14.
从一维数?/p>
a[n]
中顺序查找出一个最大值元素的时间复杂度为
________
?/p>
输出一个二维数?/p>
b[m][n]
中所有元素值的时间复杂度为
________
?/p>
15.
在下面程序段中,
s=s+p
语句的执行次数为
________
?/p>
p*=j
语句的执行次数为
________
,该
程序段的时间复杂度为
________
?/p>
int i=0,s=0;
while(++i<=n) {
int p=1;