数据结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构》综合复习资料

一、填空题

1.数据结构是()。

2.堆栈的特点是(),队列的特点是(),字符串中的数据元素为()。

3.列举三种树的存储方式()、()和()。

4.哈希表查找技术的性能取决于三个因素,它们是()、()和()。

5.ADT称为抽象数据类型,它是指()。

6.求下列程序的时间复杂度,并用大O表示方法表示()。

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

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

{ ++x;

a[i][j] = x;

}

7.用堆栈求中缀表达式a+b*c/d+e*f的后缀表达式,求出的后缀表达式为()。

8.含零个字符的串称为()串,用 表示。其他串称为()串。任何串中所含字符的个数称为该串的()。

9.设有字母序列{Q,D,F,X,A,P,N,B,,Y,M,C,W},请写出按2路归并排序方法对该序列进行一趟排序后的结果()。

10.数据的逻辑结构被分为()、()、()和()四种。

11.算法设计的评价标准为()、()、()、()。

12.在线性表的单链接存储中,若一个元素所在结点的地址为p,则其后继结点的地址为(),若假定p为一个数组a中的下标,则其后继结点的下标为()。

13.()通常称作串的模式匹配。在一个主串中查找子串是否存在,存在返回();不存在返回( )。

14.在一棵二叉树中,第5层上的结点数最多为();在一棵二叉树中,假定双分支结点数为5个,单分支结点数为6个,则叶子结点数为()个。

15.对于一个具有n个顶点和e条边的无向图,当分别采用邻接矩阵、邻接表表示时,求任一顶点度数的时间复杂度依次为()、()。

16.给出一组关键字序列{29,18,25,47,58,12,15,10},增量为4的希尔(SHELL)排序结果为()。

17.数据结构的四种基本形式为集合、()、()和()。

18.线性表的常见链式存储结构有()、()和()。

19.设T是一个m*n阶矩阵,T按列序存储在一组连续的存储单元中,每个元素占用w个存储单元,若T[1,1]的存储地址为base,则T[i,j]的存储地址为()。

20.在邻接表上,无向图中顶点vi的度恰为()。对有向图,顶点vi的出度是()。为了求入度,必须遍历整个邻接表,在所有单链表中,其邻接点域的值为()的结点的个数是顶点vi的入度。

21.一般情况下,当待排序序列关键字是随机情况时,快速分类是所有数量级()的排序方法中最好的。对快速排序来讲,其最好情况下的时间复杂度是(),其最坏情况下的时间复杂度是()。

22.以下为冒泡排序的算法。请分析算法,并在____上填充适当的语句。

void bulbblesort(int n,list r)

{ int i, j, flag; /*flag为特征位*/

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

{___ ____;

for(j=1; _;j++)

if(r[j+1].key

{ ;

p=r[j]; r[j]=r[j+1]; r[j+1]=p; }

if(flag) return ;

}

}

二、选择题

1、关于算法,下面描述正确的是()。

A、时间复杂度就是算法的执行时间

B、算法必须有输入量和输出量

C、算法就是程序

D、时间复杂度仅反映算法运行时间关于问题规模的增长率

2、若某线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用()存储方式最节省时间。

A、顺序表

B、单链表

C、双链表

D、单循环链表

3、以下说法错误的是()。

A、对循环链表来说,从表中任一结点出发都能通过前后操作而扫描整个循环链表。

B、对单链表来说,只有从头结点开始才能扫描表中全部结点。

C、双链表的特点是找结点的前趋和后继都很容易。

D、对双链表来说,某个结点的存储位置既存放在其前趋结点的后继指针域中,也存放在它的后继结

点的前趋指针域中。

4、一个堆栈的入栈序列为abcde,若出栈和入栈操作可间隔进行,则出栈序列不可能的为()。

A、edcba

B、decba

C、decab

D、 abcde

5、设定树根的层次为1,则有64个结点的完全二叉树的深度为()。

A、8

B、 7

C、 6

D、 5

6、在二叉树的先序遍历,中序遍历和后序遍历算法中,所有叶子结点的先后顺序()。

A、都不相同

B、前序遍历和中序遍历相同,而与后序遍历不同

C、完全相同

D、前序遍历和后序遍历相同,而与中序遍历不同

7、关于逻辑结构和存储结构,正确的描述是()。

A、线性数据结构必须采用链式存储结构

B、一种逻辑结构,可以用不同的存储结构来存储,反之亦然

C、一种逻辑结构,可以用不同的存储结构来存储,反之不然

D、一种存储结构只能表示一种逻辑结构

8、关于链表的特点描述不正确的是()。

A、存储空间不一定连续;

B、元素之间的后继关系是由指针来体现的;

C、逻辑上相邻,物理上不一定相邻;

D、随机存取(顺序存取),即访问任何一个元素的时间相同。

9、树最适合用来表示()。

A、元素之间具有分支层次关系的数据

B、无序数据元素

C、有序数据元素

D、元素之间无联系的数据

10、下列说法不正确的是()。

A、图的遍历是从给定的源点出发每一个顶点仅被访问一次

B、图的深度遍历不适用于有向图

C、遍历的基本算法有两种:深度遍历和广度遍历

D、图的深度遍历是一个递归过程

11、在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是()。

A、快速排序

B、堆排序

C、归并排序

D、基数排序

12、下程序段的时间复杂度为()。

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

for(j=2;j<=i-1;++j)

{ ++x; a[i,j]=x; }

A、O(1)

B、O(n)

C、O(2n)

D、O(3n)

13、设矩阵A是一对称矩阵(a ij=a ji, 1<=i,j<=8),若每个矩阵元素占3个单元,将其上三角部分(包括对角线)按行序为主序存放在数组B中,B的首地址为1000,则矩阵元素a67的地址为()。

A、1031

B、1093

C、1096

D、1032

14、已知含10个结点的二叉排序树是一棵完全二叉树,则该二叉排序树在等概率情况下查找成功的平均查找长度等于()。

A、1.0

B、2.9

C、3.4

D、5.5

相关文档
最新文档