数据结构试题.docx

上传人:b****4 文档编号:5475135 上传时间:2022-12-16 格式:DOCX 页数:31 大小:74.78KB
下载 相关 举报
数据结构试题.docx_第1页
第1页 / 共31页
数据结构试题.docx_第2页
第2页 / 共31页
数据结构试题.docx_第3页
第3页 / 共31页
数据结构试题.docx_第4页
第4页 / 共31页
数据结构试题.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

数据结构试题.docx

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

数据结构试题.docx

数据结构试题

1绪论沈阳理工大学应用技术学院信息与控制学院计算机科学与技术教研室2011-5-8-1-数据结构复习题:

绪论单选题1、在数据结构中,与所使用的计算机无关的数据叫____结构。

A存储|B物理|C逻辑|D物理和存储2、在数据结构中,从逻辑上可以把数据结构分成______。

A动态结构和静态结构|B紧凑结构和非紧凑结构|C线性结构和非线性结构|D内部结构和外部结构图3、数据结构在计算机内存中的表示是指_______。

数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系4、在数据结构中,与所使用的计算机无关的是数据的______结构。

逻辑|存储|逻辑和存储|物理5、在以下的叙述中,正确的是_____。

线性表的线性存储结构优于链表存储结构|二维数组是其数据元素为线性表的线性表|栈的操作方式是先进先出|队列的操作方式是先进后出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、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储_____.-2-数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法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、线性表的静态存储结构与顺序存储结构相比优点是_______。

所有的操作算法实现简单|便于随机存取|便于插入和删除|便于利用零散的存储器空间-3-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

绪论判断题1、数据元素是数据的最小单位。

2、数据项是数据的基本单位。

3、数据元素是数据的最小单位4、数据对象就是一组任意数据元素的集合5、任何数据结构都具备3个基本运算:

插入、删除和查找.6、数据是由一些类型相同的数据元素构成的7、数据是逻辑结构与各数据元素在计算机中如何存储有关8、如果数据元素值发生改变,则数据的逻辑结构也随之改变.9、逻辑结构相同的数据,可以采用多种不同的存储方法.10、逻辑结构相同的数据,结点类型也一定相同11、逻辑结构不相同的数据,必须采用不同的存储方式来存储12、数据的逻辑结构是指数据的各数据项之间的逻辑关系.13、算法的优劣与算法描述语言有无关,但与所有计算机有关。

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

15、程序一定是算法。

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

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

-4-数据结构复习题:

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

#defineMAX100voidmaxtrixmult(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

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

(2)分析算法中语句"x+=2;"的执行次数;-5-//①//②//③//④//⑤//⑥(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++;m=n*n/4O()数据结构复习题:

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

2、数据逻辑结构包括、和三种类型,树形结构和图形结构合称为________。

3、在线性结构中,第一个结点________前驱结点,其余每个结点有且只有_______个前驱结点:

最后一个结点______后续结点,其余每个结点有且只有______个后续结点。

4、在树形结构中,树根结点没有______结点,其余每个结点有且只有______个前驱结点:

叶子结点没有______结点,其余每个结点后的后续结点可以_______5、在图形结构中,每个结点的前驱结点数和后续结点数可以___任意多个_____。

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

7、算法的5个重要特性是_________、__________、__________、输入和输出。

8、算法可以用不同的语言描述,如果用C语言或PASCAL语言等高级语言来描述,则算法实现上就是程序了。

这个断言是________。

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

这个断言是_______。

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

for(i=0;i

i=s=0;while(s

s=0;for(i=0;i

i=1;-6-while(i<=n)i=i*3;14、有如下递归函数fact(n),分析其时间复杂度。

intfact(intn){if(n<=1)return1;elsereturn(n*fact(n-1));}15、指出下列各算法的时间复杂度

(1)prime(intn){inti=2;while(n%i!

=0&&isqrt(n))printf"是一素数";elseprintf"不是一素数";}O(sqrt(n))

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

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),其数量级表示为_____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-数据结构复习题:

线性表单选题1、在一个长度为n的顺序表中,向第i个元素(1≤i≤n+1)之前插入一个新元素时,需向后移动_____个元素。

2、从一个具有n个节点的单链表中查找其值等于x结点时,在查找成功的情况下,需平均比较__(n+1)/2___个结点。

3、在一个单链表中,已知*q结点是*p结点的前驱结点,若在*q和*p之间插入*s结点,则执行_____。

4、线性表是_____。

5、对顺序存储的线性表,设其长度为n,在任何位置上插入或删除操作都是等概率的,删除一个元素时大约要移动表中的_____个元素。

6、线性表采用链式存储时,其地址_____。

7、设单链表中指针p指着结点m,指针f指着将要插入的新结点x,当x插在链表中最后一个结点m之后时,只要先修改_____后修改p->link=f即可。

8、在双向链表存储结构中,删除p所指的结点时需修改指针_____。

9、在双向链表存储结构中,删除p所指的结点的前趋结点(若存在)时需修改指针_____。

10、根据线性表的链式存储结构,每个结点所含指针的个数,链表分为单链表和_____。

11、在线性表的链式存储结构中,逻辑上相邻的元素在物理位置上_____。

12、链表不具备的特点是_______。

13、不带头结点的单链表head为空的判定条件是______。

14、带头结点的单链表的head为空的判定条件是______。

15、带头结点的双循环表L为空表的条件是__L->next==L____。

16、非空的循环单链表head的尾结点(由p所指向)满足_______。

17、在循环双链表的p所指结点之前插入s所指结点的操作是_______。

18、若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用___带头结点的双循环链表___存储方式最节省运算时间。

19、某线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,故采用___仅有尾指针的单循环链表__存储方式最节省运算时间。

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

21、如果最常用的操作是取第i个结点及其前驱,则采用___顺序表___存储方式最节省时间。

22、在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是______。

23、在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行____删除单链表中的最后一个元素____操作与链表的长度有关。

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

25、设线性表中有2n个元素,算法___删除所有值为x的元素____,在单链表上实现要比在顺序表上实现效率更高。

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

27、如果对线性表的运算只有4种,即删除第一个元素,删除最后一个元素,在第一个元素前面插入新元素,在最后一个元素的后面插入新元素,则最后使用___只有表头指针没有表尾指针的循环双链表_____。

28、如果对线性表的运算只有两种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用_______。

29、设有两个长度为n的单链表,结点类型相同。

若以h1为表头指针的链表是非循环的,以h2为表头指针的链表是循环的,则_______。

30、在长度为n的______上,删除第一个结点,其算法的时间复度为O(n)。

31、将两个各有n个元素的有序顺序表归并成一个有序顺序表,其最少的比较次数是__n___。

-11-32、带头结点的单链表L为空的判定条件是______。

33、在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是_______。

34、在一个长度为n(n>1)的带头结点的单链表h上,,另设有尾指针r(指向尾结点),执行_______操作与链表的长度有关。

35、在一个双链表中,在*p结点之后插入结点*q的操作是______。

36、在一个双链表中,在*p结点之前插入*q结点的操作是______。

37、在一个双链表达式,删除*p结点的操作是_______。

38、在一个双链表中,删除*p结点之后的一个结点的操作是________。

39、非空的循环单链表L的尾结点(由p所指向)满足______。

40、带头结点的双循环链表L为空表的条件是______。

41、若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用_____带头结点的循环双链表____存储方式最节省运算时间。

42、如果对含有n(n>1)个元素的线性表的运算只有4种:

删除第一个元素;删除最后一个元素;在第一个元素前面插入新元素;在最后一个元素的后面插入新元素,则最好使用____只有头结点指针没有尾结点指针的循环双链表____。

43、某线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,则采用__

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

当前位置:首页 > 成人教育 > 专升本

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

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