数据结构c语言版试题大全(含答案)(2)

2019-08-30 13:29

数据结构复习题:绪论 判断题

1、数据元素是数据的最小单位。 2、数据项是数据的基本单位。 3、数据元素是数据的最小单位

4、数据对象就是一组任意数据元素的集合

5、任何数据结构都具备3个基本运算: 插入、删除和查找. 6、数据是由一些类型相同的数据元素构成的

7、数据是逻辑结构与各数据元素在计算机中如何存储有关 8、如果数据元素值发生改变,则数据的逻辑结构也随之改变. 9、逻辑结构相同的数据,可以采用多种不同的存储方法. 10、逻辑结构相同的数据,结点类型也一定相同

11、逻辑结构不相同的数据,必须采用不同的存储方式来存储 12、数据的逻辑结构是指数据的各数据项之间的逻辑关系.

13、算法的优劣与算法描述语言有无关,但与所有计算机有关。

14、算法可以用不同的语言描述,如果用C或Pascal等高级语言来描述,则算法实际上就是程序了。 15、程序一定是算法。

16、算法最终必须由计算机程序实现。

19、健壮的算法不会因非法入输数据而出现莫名其妙的执行结果。

数据结构复习题答案:绪论 判断题 1、False 2、False 3、False 4、False 5、False 6、True 7、False 8、False 9、True 10、False 11、False 12、False 13、False 14、False 15、False 16、False 19、True

- 6 -

数据结构复习题:绪论 算法分析题

1、求两个n阶矩形的乘法C=A*B,其算法如下: #define MAX 100

void maxtrixmult(int ,float a[MAX][MAX],b[MAX][MAX],float c[MAX][MAX]) {

int i,j,k; float x;

for(i=1;i<=n;i++) //① {

for (j=1;j<=n;j++) //② {

x=0; //③ for(k=1;k<=n;k++) //④ x+=a[i][k]*b[k][j]; //⑤ c[i][j]=x; //⑥ } } }

计算①~⑥各语句的频度,并分析该算法的时间复杂度。

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

for(i=1;i<=n;i++)

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

3、阅读下列算法: void suan_fa(int n) {

int i,j,k,s,x;

for (s=0,i=0;i

i++; j--; x+=2; }

pirntf(\}

(1) 分析算法中语句\的执行次数; (2) 分析算法中语句\的执行次数;

- 7 -

(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++;

数据结构复习题答案:绪论 算法分析题

1、答: 语句 频度 for(i=1;i<=n;i++) //① ?? n+1 { for (j=1;j<=n;j++) //② ?? n(n+1) {x=0; //③ ?? n2 for(k=1;k<=n;k++) //④ ?? n2(n+1) x+=a[i][k]*b[k][j]; //⑤ ?? n3

c[i][j]=x; //⑥ ?? n2

所以:f(n)n+1+ n(n+1)+ n2+ n2(n+1)+ n3+ n2=2n3+4n2+2n+1=O( n3 )

2、答:m+n(n-1) O(n2)

3、分析算法中语句”s++;”的执行次数:n+(n-1)+(n-2)+?+1=n(n+1)/2 分析算法中语句”x+=2;”的执行次数: n/2

分析该算法的时间复杂度: O(n2) 假定n=5,试指出执行该算法的输出结果: s=15, x=4

6、

数据结构复习题:绪论 填空题

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

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

5、在图形结构中,每个结点的前驱结点数和后续结点数可以________。

6、线性结构中元素之间存在_________关系,树形结构中元素之间存在_______关系,图形结构中元素之间存在________关系。

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

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

- 8 -

_______。

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

for (i=0;i

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

i=s=0; while(s

i++; s+=i; }

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

for (i=0;i

for (j=0;j

13、下面程序段的时间复杂度是________。 i=1;

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 \不是一素数\}

(2) sum1(int n)

- 9 -

{

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、数据的逻辑结构是指_____.

17、一个数据结构在计算机中的______称为存储结构.

18、顺序存储方法是把逻辑上_____存储在物理位置上______里;链式存储方法中结点间的逻辑关系是由_____的. 19、数据结构是指研究数据的_____和_____以及它们之间的相互关系,并对这种结构定义相应的_____,设计出相应的_____,从而确保经过这些运算后所得到的新结构是原来的结构类型. 20、一个算法具有5个特性:_____、_____、_____、输入和输出。 21、算法的执行时间是_____的函数。

22、数据的逻辑结构是从逻辑上描述数据,它与数据的______无关,是独立于计算机的.

23、数据的逻辑结构被分为____________、____________、____________和____________4种。 24、数据的存储结构被分为____________、____________、____________和____________4种。

25、在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着____________、____________、____________的联系。

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

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

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

- 10 -


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

下一篇:哲学与人生 第一课 2014修订版

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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