数据结构试题库(2)

2025-11-09

(3) 分析该算法的时间复杂度;

(4) 假定n=5, 试指出执行该算法的输出结果。

6、设n是偶数,试计算运行下列程序段后m的值并给出该程序段的时间复杂度。 int m=0,i,j;

for (i=1;i<=n;i++) for (j=2*i;j<=n;j++)

m++; m=n*n/4 O() 数据结构复习题:绪论 填空题

1、一个数据结构在计算机中___映像___称为存储结构。

2、数据逻辑结构包括 、 和 三种类型,树形结构和图形结构合称为________。 3、在线性结构中,第一个结点________前驱结点,其余每个结点有且只有_______个前驱结点:最后一个结点______后续结点,其余每个结点有且只有______个后续结点。 4、在树形结构中,树根结点没有______结点,其余每个结点有且只有______个前驱结点:叶子结点没有______结点,其余每个结点后的后续结点可以_______

5、在图形结构中,每个结点的前驱结点数和后续结点数可以___任意多个_____。

6、线性结构中元素之间存在___一对一______关系,树形结构中元素之间存在___一对多____关系,图形结构中元素之间存在____多对多____关系。

7、算法的5个重要特性是_________、__________、__________、输入和输出。 8、算法可以用不同的语言描述,如果用C语言或PASCAL语言等高级语言来描述,则算法实现上就是程序了。这个断言是________。

9、数据结构、数据元素和数据项在计算机中的映射(或表示)分别称为存储结构、结点和数据域。这个断言是_______。

10、下面程序段的时间复杂度是_______。

for (i=0;i

11、下面程序段的时间复杂度是__O(sqrt(n))_____。

i=s=0; while(s

i++; s+=i; }

12、下面程序段的时间复杂度是_______。 s=0;

for (i=0;i

for (j=0;j

13、下面程序段的时间复杂度是___O(log3n)_____。 i=1;

- 6 -

while(i<=n) i=i*3;

14、有如下递归函数fact(n),分析其时间复杂度。 int fact(int n) {

if (n<=1)

return 1; else

return (n*fact(n-1)); }

15、指出下列各算法的时间复杂度 (1) prime(int n) {

int i=2;

while(n%i!=0 && i

if (i*1.0>sqrt(n))

printf \是一素数\ else

printf \不是一素数\} O(sqrt(n)) (2) sum1(int n) {

int p=1,sum=0,i; for (i=1;i<=n;i++) {

p*=i; sum+=p; }

returm (sum); } (3) sum2(int n) {

int sum=0,i,j; for (i=1;i<=n;i++) {

p=1;

for (j=1;j<=i;j++) p*=j; sum+=p; }

return (sum); }

16、数据的逻辑结构是指_____.

- 7 -

17、一个数据结构在计算机中的_表示_____称为存储结构.

18、顺序存储方法是把逻辑上__相邻的结点___存储在物理位置上___相邻的存储单元___里;链式存储方法中结点间的逻辑关系是由 附加的指针字段表示____的.

19、数据结构是指研究数据的__存储结构___和__逻辑结构___以及它们之间的相互关系,并对这种结构定义相应的__运算___,设计出相应的__算法___,从而确保经过这些运算后所得到的新结构是原来的结构类型. 20、一个算法具有5个特性:_____、_____、_____、输入和输出。 21、算法的执行时间是_____的函数。

22、数据的逻辑结构是从逻辑上描述数据,它与数据的___存储结构、物理结构___无关,是独立于计算机的. 23、数据的逻辑结构被分为____________、____________、___________和____________4种。 24、数据的存储结构被分为____________、____________、____________和____________4种。

25、在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着____1:1________、____1:N________、_____M:N_______的联系。

26、一种抽象数据类型包括______数据______和____操作_______两个部分。 27、从一维数组a[n]中顺序查找出一个最大值元素的时间复杂度为____________,输出一个二维数组b[m][n]中所有元素值的时间复杂度为____________

28、在下面程序段中,s=s+p语句的执行次数为______n______,p*=j语句的执行次数为______n*(n+1)/2______,该程序段的时间复杂度为______O(n*n)______。 int i=0,s=0; while(++i<=n) { int p=1;

for(int j=1;j<=i;j++) p*=j; s=s+p;}

29、一个算法的时间复杂度为(3*n*n+2nlog2n+4n-7)/(5n),其数量级表示为_____O(n)_______。

30、从一个数组a[10]中顺序查找元素时,假定查找每个元素的概率都相同,则进行一次查找运算时的平均查找长度(即同元素的平均比较次数)为____________。

31、从一个数组a[7]中顺序查找元素时,假定查找第1个元素a[0]的概率为1/3,查找第2个元素a[1]的概率为1/4,其找其余元素的概率均相同,则在查找成功时同元素的平均比较次数为____35/12________。 32、对于一个n*n的矩阵A的任意矩阵元素a[i][j],按行存储时和按列存储时的地址之差是

____(i-j)*(n-1)*d______。设两种存储时的开始存储地址均为LOC(0,0),每个元素所占存储单元数均为d。 33、设有一个二维数组A[10][20],按行存放于一个连续的存储空间中,A[0][0]的存储地址是200,每个数组元素占1个存储字,则A[6][2]的存储字地址是____________

34、设有一个二维数组A[10][20],按列为主序存放于一个连续的存储空间中,A[0][0]的存储地址是200,每个数组元素占1个存储字,则A[6][2]的存储字地址是____________。

37、在线性表的单链接存储结构中,每个结点包含有两个域,一个叫____________,另一个叫____________域。

数据结构复习题:绪论 问答题

1、当你为解决某一问题而选择数据结构时,应从哪些方面考虑? 2、简述逻辑结构与存储结构的关系. 3、数据运算是数据结构的一个重要方面,试举例说明两个数据结构的逻辑结构和存储方式完全相同,只是对于运算的定义不同,因而两个结构具有显著不同的特性,则这两个数据结构是不同的.

- 8 -

数据结构复习题答案:绪论 问答题

1、解答:通常从两方面考虑:第一是算法所需的存储空间量;第二是算法所需的时间。对算法所需的时间又涉及以下三点:

(1)程序运行时所需输入的数据总量。 (2)计算机执行每条指令所需的时间。 (3)程序中指令重复执行的次数。

2、答:数据的逻辑结构反映数据元素之间的逻辑关系(即数据元素之间的关联方式或“邻接关系”),数据的存储结构是数据结构在计算机中的表示,包括数据元素的表示及其关系的表示。 3、答:栈和队列的逻辑结构相同,其存储表示也可相同(顺序存储和链式存储),但由于其运算集合不同而成为不同的数据结构。

2 线性表

沈阳理工大学应用技术学院

信息与控制学院 计算机科学与技术教研室

2011-5-8

- 9 -

- 10 -


数据结构试题库(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:甘肃兰州市2024届高三物理上学期第二次月考(9月)

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219