数据结构复习题.docx

上传人:b****3 文档编号:27446667 上传时间:2023-07-01 格式:DOCX 页数:147 大小:100.49KB
下载 相关 举报
数据结构复习题.docx_第1页
第1页 / 共147页
数据结构复习题.docx_第2页
第2页 / 共147页
数据结构复习题.docx_第3页
第3页 / 共147页
数据结构复习题.docx_第4页
第4页 / 共147页
数据结构复习题.docx_第5页
第5页 / 共147页
点击查看更多>>
下载资源
资源描述

数据结构复习题.docx

《数据结构复习题.docx》由会员分享,可在线阅读,更多相关《数据结构复习题.docx(147页珍藏版)》请在冰豆网上搜索。

数据结构复习题.docx

数据结构复习题

 

1绪论

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

信息与控制学院

计算机科学与技术教研室

2011-5-8

数据结构复习题:

绪论

单选题

1、在数据结构中,与所使用的计算机无关的数据叫__C___结构。

A存储|B物理|C逻辑|D物理和存储

2、在数据结构中,从逻辑上可以把数据结构分成___C___。

A动态结构和静态结构|B紧凑结构和非紧凑结构|C线性结构和非线性结构|D内部结构和外部结构图

3、数据结构在计算机内存中的表示是指____A___。

数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系

4、在数据结构中,与所使用的计算机无关的是数据的__A____结构。

逻辑|存储|逻辑和存储|物理

5、在以下的叙述中,正确的是__B___。

线性表的线性存储结构优于链表存储结构|二维数组是其数据元素为线性表的线性表|栈的操作方式是先进先出|队列的操作方式是先进后出

6、在决定选取何种存储结构时,一般不考虑_______。

各结点的值如何|结束个数的多少|对数据有哪些运算|所用编程语言实现这种结构是否方便

7、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储_______。

数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法

8、下面说法错误的是_______。

(1) 算法原地工作的含义是指不需要任何额外的辅助空间

(2) 在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法

(3) 所谓时间复杂度是指最坏情况下,估计算法执行时间的一个上界

(4) 同一个算法,实现语句的级别越高,执行效率越低

(1)|

(1)、

(2)|

(1)、(4)|(3)

9、通常要求同一逻辑结构中的所有数据元素具有相同的特性。

这意味着______。

数据元素具有同一特点|不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致|每个数据元素都一样|数据元素所包含的数据项的个数要相等

10、以下说法正确的是_______。

数据元素是数据的最小单位|数据项是数据的基本单位|数据结构是带结构的数据项的集合|一些表面上很不相同的数据可以有相同的逻辑结构

11、____是数据的最小单元,_____是数据的基本单位.

数据项|数据元素|信息项|表元素

12、数据结构是指_____以及它们之间的_____.

(1)数据元素

(2)结构|

(1)计算方法

(2)关系|

(1)逻辑存储

(2)运算|

(1)数据映像

(2)算法

13、计算机所处理的数据一般具备某种内在的关系,这是的指_____.

数据和数据之间存在的某种关系|元素和元素之间存在某种关系|元素内部具有某种结构|数据项和数据项之间存在某种关系

14、数据的逻辑结构可以分为_____两类.

动态结构和表态结构|紧凑结构和非紧凑结构|线性结构和非线性结构|内部结构和外部结构

15、数据的逻辑结构是指_____关系的整体.

数据元素之间逻辑|数据项之间逻辑|数据类型之间|存储结构之间

16、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储_____.

数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法

17、在数据的存储结构中,一个存储结点存储一个_____.

数据项|数据元素|数据结构|数据类型

18、在计算机的存储器中表示时,物理地址和逻辑地址直接对应并且是连续的,称之为_____.

逻辑结构|顺序存储结构|链式存储结构|以上都对

19、数据采用链式存储结构时,要求_____.

每个结点用占一片连续的存储区域|所有结点占用一片连续的存储区域|结点的最后一个数据域是指针类型|每个结点有多少个后继,就设多少个指针域

20、数据的运算_____.

效率与采用何种存储结构有关|是根据存储结构来定义的|有算术运算和关系运算两大类|必须用程序设计语言来描述

21、下列说法中,不正确的是_____.

数据元素是数据的基本单位|数据项是数据中不可分割的最小可标识单位|数据可由若干个数据元素构成|数据项可由若干个数据元素构成

22、_____不是算法的基本特性.

可行性|长度有限|在规定的时间内完成|确定性

23、计算机中算法指的是解决某一问题的有限运算序列,它必须具备输入、输出、_____.

可行性、可移植性和可扩充性|可行性、有穷性和确定性|确定性、有穷性和稳定性|易读性、稳定性和确定性

24、以下不属于算法特性的是_____.

可行性|有输入|确定性|健壮性

25、下面关于算法的说法正确的是_____.

算法最终必须由程序实现|算法的有穷性是对于任意的一组输入值必须在有穷步骤后结束|算法的可行性是指指令不能有二义性|以上几个都是错误的

26、算法的时间复杂度与______有关

问题规模|计算机硬件性能|编译程序质量|程序设计语言

27、算法分析的主要任务是分析_____.

算法是否具有较好的可读性|算法中是否存在语法错误|算法的功能是否符合设计要求|算法的执行时间和问题规模之间的关系

28、某算法的时间复杂度为O(n2),表明该算法的_____.

问题规模是n2|执行时间等于n2|执行时间与n2成正比|问题规模与n2成正比

29、算法分析的目的是_____.

找出数据结构的合理性|研究算法中输入和输出关系|分析算法的效率以求改进|分析算法的易读性和文档性

30、线性表是具有n个______的有限序列。

表元素|字符|数据元素|数据项

31、线性表是______。

一个有限序列,可以为空|一个有限序列,不可以为空|一个无限序列,可以为空|一个无限序列,不可以为空

32、线性表采用链表存储时,其地址______。

必须是连续的|一定是不连续的|部分地址必须是连续的|连续与否均可以

33、链表不具备的特点是______。

可随机访问任一结点|插入删除不需要移动元素|不必事先估计存储空间|所需空间与其长度成正比

34、线性表的静态存储结构与顺序存储结构相比优点是_______。

所有的操作算法实现简单|便于随机存取|便于插入和删除|便于利用零散的存储器空间

35、设线性表有n个元素,以下操作中,_______在顺序表上实现比在链表上实现效率更高。

输出第i(1<=i<=n)个元素值|交换第1个元素与第2个元素的值|顺序输出这n个元素的值|输出与给定值x相等的元素在线性表中的序号

36、对于一个线性表,既要求能够较快地进行插入和删除,又要求存储结构能够反映数据元素之间的逻辑关系,则应采用_______存储结构。

顺序|链式|散列|索引

37、设线性表中有2n个元素,以下操作中,______在单链表上实现要比在顺序表上实现效率更高。

删除指定的元素|在最后一个元素的后面插入一个新元素|顺序输出前k个元素|交换第i个元素和第2n-i-1个元素的值(i=0,1,…,n-1)

38、需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是______。

单链表|静态链表|线性链表|顺序存储结构

39、如果最常用其所长的操作是取第i个结点及其前驱,则采用______结构方式最节省时间。

单链表|双链表|单循环链表|顺序表

40、与单链表相比,双链表的优点之一是______。

插入、删除操作更简单|可以进行随机访问|可以省略表头指针或表尾指针|访问前后相邻结点更灵活

41、数据结构在计算机内存中的表示是指______.

数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系

42、下面程序段的时间复杂度为_________.

O(m)|O(n)|O(m*n)|O(m+n)

for(inti=0;i

for(intj=0;j

a[i][j]=i*j;

数据结构复习题答案:

绪论

单选题

1、存储|物理|逻辑|物理和存储C

1C2C3A4A5B6A7C8A9B10D

11AB12AB13B14C

2、动态结构和静态结构|紧凑结构和非紧凑结构|线性结构和非线性结构|内部结构和外部结构图?

AC

3、数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系A

4、逻辑|存储|逻辑和存储|物理A

5、线性表的线性存储结构优于链表存储结构|二维数组是其数据元素为线性表的线性表|栈的操作方式是先进先出|队列的操作方式是先进后出B

6、各结点的值如何|结束个数的多少|对数据有哪些运算|所用编程语言实现这种结构是否方便A

7、数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法C

8、

(1)|

(1)、

(2)|

(1)、(4)|(3)A

9、数据元素具有同一特点|不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致|每个数据元素都一样|数据元素所包含的数据项的个数要相等B

10、数据元素是数据的最小单位|数据项是数据的基本单位|数据结构是带结构的数据项的集合|一些表面上很不相同的数据可以有相同的逻辑结构D

11、数据项|数据元素|信息项|表元素A|B

12、

(1)数据元素

(2)结构|

(1)计算方法

(2)关系|

(1)逻辑存储

(2)运算|

(1)数据映像

(2)算法A|B

13、数据和数据之间存在的某种关系|元素和元素之间存在某种关系|元素内部具有某种结构|数据项和数据项之间存在某种关系B

14、动态结构和表态结构|紧凑结构和非紧凑结构|线性结构和非线性结构|内部结构和外部结构C

15A16C17B18B19A20A

21D22B23B24D25B26A27D28C29C30C

31A32D33A34C35A36B37A38B39B40D

41A42C

15、数据元素之间逻辑|数据项之间逻辑|数据类型之间|存储结构之间A

16、数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法C

17、数据项|数据元素|数据结构|数据类型B

18、逻辑结构|顺序存储结构|链式存储结构|以上都对B

19、每个结点用占一片连续的存储区域|所有结点占用一片连续的存储区域|结点的最后一个数据域是指针类型|每个结点有多少个后继,就设多少个指针域A

20、效率与采用何种存储结构有关|是根据存储结构来定义的|有算术运算和关系运算两大类|必须用程序设计语言来描述A

21、数据元素是数据的基本单位|数据项是数据中不可分割的最小可标识单位|数据可由若干个数据元素构成|数据项可由若干个数据元素构成D

22、可行性|长度有限|在规定的时间内完成|确定性B

23、可行性、可移植性和可扩充性|可行性、有穷性和确定性|确定性、有穷性和稳定性|易读性、稳定性和确定性B

24、可行性|有输入|确定性|健壮性D

25、算法最终必须由程序实现|算法的有穷性是对于任意的一组输入值必须在有穷步骤后结束|算法的可行性是指指令不能有二义性|以上几个都是错误的B

26、问题规模|计算机硬件性能|编译程序质量|程序设计语言A

27、算法是否具有较好的可读性|算法中是否存在语法错误|算法的功能是否符合设计要求|算法的执行时间和问题规模之间的关系D

28、问题规模是n2|执行时间等于n2|执行时间与n2成正比|问题规模与n2成正比C

29、找出数据结构的合理性|研究算法中输入和输出关系|分析算法的效率以求改进|分析算法的易读性和文档性C

30、表元素|字符|数据元素|数据项C

31、一个有限序列,可以为空|一个有限序列,不可以为空|一个无限序列,可以为空|一个无限序列,不可以为空A

32、必须是连续的|一定是不连续的|部分地址必须是连续的|连续与否均可以D

33、可随机访问任一结点|插入删除不需要移动元素|不必事先估计存储空间|所需空间与其长度成正比A

34、所有的操作算法实现简单|便于随机存取|便于插入和删除|便于利用零散的存储器空间C

35、输出第i(1<=i<=n)个元素值|交换第1个元素与第2个元素的值|顺序输出这n个元素的值|输出与给定值x相等的元素在线性表中的序号A

36、顺序|链式|散列|索引B

37、删除指定的元素|在最后一个元素的后面插入一个新元素|顺序输出前k个元素|交换第i个元素和第2n-i-1个元素的值(i=0,1,…,n-1)A

38、单链表|静态链表|线性链表|顺序存储结构B

39、单链表|双链表|单循环链表|顺序表D

40、插入、删除操作更简单|可以进行随机访问|可以省略表头指针或表尾指针|访问前后相邻结点更灵活D

41、数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系A

42、O(m||O(m*n)|O(m+n)C

 

数据结构复习题:

绪论

判断题

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

 

数据结构复习题:

绪论

算法分析题

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

#defineMAX100

voidmaxtrixmult(int,floata[MAX][MAX],b[MAX][MAX],floatc[MAX][MAX])

{

inti,j,k;

floatx;

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、阅读下列算法:

voidsuan_fa(intn)

{

inti,j,k,s,x;

for(s=0,i=0;i

for(j=i;j

s++;

i=1;j=n;x=0;

while(i

{

i++;

j--;

x+=2;

}

pirntf("s=%d,x=%d",s,x);

}

(1)分析算法中语句"s++;"的执行次数;

(2)分析算法中语句"x+=2;"的执行次数;

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

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

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

intm=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、数据结构、数据元素和数据项在计算机中的映射(或表示)分别称为存储结构、结点和数据域。

这个断言是_______。

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

for(i=0;i

for(j=0;j

A[i][j]=0;

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

i=s=0;

while(s

{

i++;

s+=i;

}

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

s=0;

for(i=0;i

for(j=0;j

s+=B[i][j];

sum=s;

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

i=1;

while(i<=n)

i=i*3;

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

intfact(intn)

{

if(n<=1)

return1;

else

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

}

15、指出下列各算法的时间复杂度

(1)prime(intn)

{

inti=2;

while(n%i!

=0&&i

i++;

if(i*1.0>sqrt(n))

printf"是一素数";

else

printf"不是一素数";

}

(2)sum1(intn)

{

intp=1,sum=0,i;

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

{

p*=i;

sum+=p;

}

returm(sum);

}

(3)sum2(intn)

{

intsum=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语句的执行次数为____________,该程序段的时间复杂度为____________。

    inti=0,s=0;

while(++i<=n)

{intp=1;

for(intj=1;j<=i;j++)

p*=j;

s=s+p;}

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

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

31、从一个数组a[7]中顺序查找元素时,假定查找第1个元素a[0]的概率为1/3,查找第2个元素a[1]的概率为1/4,其找其余元素的概率均相同,则在查找成功时同元素的平均比较次数为____________。

32、对于一个n*n的矩阵A的任意矩阵元素a[i][j],按行存储时和按列存储时的地址之差是 ____________。

设两种存储时的开始存储地址均为LOC(0,0),每个元素所占存储单元数均为d。

33、设有一个二维数组A[10][20],按行存放于一个连续的存储空间中,A[0][0]的存储地

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1