数据结构专科练习题
数据结构复习题及答案5篇
数据结构复习题及答案5篇第一篇:数据结构复习题及答案、数据结构复习题及答案中南大学现代远程教育课程考试(专科)复习题及参考答案数据结构一、判断题:1.数组是一种复杂的数据结构,数组元素之间的关系既不是线性的也不是树形的。
()2.链式存储在插人和删除时需要保持物理存储空间的顺序分配,不需要保持数据元素之间的逻辑顺序。
()3.在只有度为0和度为k的结点的k叉树中,设度为0的结点有n0个,度为k的结点有nk个,则有n0=nk+1。
()4.折半搜索只适用于有序表,包括有序的顺序表和有序的链表。
()5.如果两个串含有相同的字符,则这两个串相等。
()6.数组可以看成线性结构的一种推广,因此可以对它进行插入、删除等运算。
()7.在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾指针。
()8.通常递归的算法简单、易懂、容易编写,而且执行的效率也高。
()9.一个广义表的表尾总是一个广义表。
()10.当从一个小根堆(最小堆)中删除一个元素时,需要把堆尾元素填补到堆顶位置,然后再按条件把它逐层向下调整,直到调整到合适位置为止。
()11.对于一棵具有n个结点,其高度为h的二叉树,进行任一种次序遍历的时间复杂度为O(h)。
()12.存储图的邻接矩阵中,邻接矩阵的大小不但与图的顶点个数有关,而且与图的边数也有关。
()13.直接选择排序是一种稳定的排序方法。
()14.闭散列法通常比开散列法时间效率更高。
()15.有n个结点的不同的二叉树有n!棵。
()16.直接选择排序是一种不稳定的排序方法。
()17.在2048个互不相同的关键码中选择最小的5个关键码,用堆排序比用锦标赛排序更快。
()18.当3阶B_树中有255个关键码时,其最大高度(包括失败结点层)不超过8。
()19.一棵3阶B_树是平衡的3路搜索树,反之,一棵平衡的3路搜索树是3阶非B_树。
()20.在用散列表存储关键码集合时,可以用双散列法寻找下一个空桶。
数据结构试题及答案(十套)
一、单选题(每题 2 分,共20分)1.对一个算法的评价,不包括如下(B )方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。
A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3.对线性表,在下列哪种情况下应当采用链表表示?( )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.AOV网是一种()。
A.有向图B.无向图C.无向无环图D.有向无环图6.采用开放定址法处理散列表的冲突时,其平均查找长度()。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.若需要利用形参直接访问实参时,应将形参变量说明为()参数。
A.值B.函数C.指针D.引用8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的()。
A.行号B.列号C.元素值D.非零元素个数9.快速排序在最坏情况下的时间复杂度为()。
A.O(log2n) B.O(nlog2n)C.0(n) D.0(n2)10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1.数据结构是指数据及其相互之间的______________。
当结点之间存在M对N (M:N)的联系时,称这种结构为_____________________。
数据结构专科练习题
数据结构练习题(专科)一、简答题1.什么是拓扑排序?2.什么是堆积?3.图的邻接矩阵与邻接表两种存储表示法在空间代价上的差别为何?4.算法与程序的区别是什么?5.什么是堆(heap)?6.什么是栈(stack)?7.什么样的图遍历后由所有顶点和遍历时所经过的边所构成的子图一定是生成树?8.举例说明希尔(Shell)排序是否是稳定的排序方法?9.什么是遍历运算?10.什么是AVL树?11.链表中的表头指针、表头结点和开始结点有什么不同?各自所起的作用是什么?12.举例说明直接选择排序是否是稳定的排序方法?13.什么是完全二叉树(complete binary tree) ?14.什么是稀疏矩阵(sparse matrix) ?15.试述链接存储结构的优缺点。
16.什么是AVL树,它与最佳二叉排序树最主要的差别是什么?17.什么是假溢出?18.什么是排序算法的“稳定性”?19.设高度为h的二叉树中只有度为0和度为2的结点,问此类二叉树中的结点数可能达到的最大值和最小值各为多少?20.顺序查找、折半查找和分块查找各自的平均查找长度ASL是多少?二、单选题1.顺序表中逻辑上相邻的结点其物理位置也( )。
A.一定相邻B.不必相邻C.按某种规律排列D.无要求2.下面关于串的叙述中,哪一个是不正确的? ( )A.串是字符的有限序列C.模式匹配是串的一种重要运算B.空串是由空格构成的串D.串既可以采用顺序存储,也可以采用链式存储3.某二叉树结点的前序序列为ECBAD,中序序列为EBCDA,则该二叉树结点的后序序列为( )。
A.ABCED B.DECAB C.DEABC D.BDACE4. 设二维数组A[m][n] 按列优先顺序存储且每个元素占c个单元,则元素A[i][j] 的地址为()。
A.LOC(A[0][0])+(j*m+i)*c B.LOC(A[0][0])+(i*n+j)*cC.LOC(A[0][0])+[(j-1)*m+i-1]*c D.LOC(A[0][0])+[(i-1)*n+j-1]*c5.在下述几种排序方法中,不稳定的排序方法是()。
数据结构(专)阶段练习4
华东理工大学网络学院(专科)《数据结构》------ch7图、ch9排序班级学号姓名成绩一、填空题(每空1分,共10分)1.具有n个顶点的有向图最多有n(n-1)条边。
2.在无向图G的邻接矩阵中,求第i个结点的度的方法是求邻接矩阵第i行非零元素之和。
3.堆排序通常采用顺序存储结构。
4. 与快速排序和堆排序相比,归并排序的最大特点是,它是一种稳定的排序方法。
5.具有8个顶点的有向完全图有56 条弧。
6. 在无向图G的邻接矩阵A中,若A[i][j]等于1,则A[j][i]等于 1 。
7.在一个待排序的序列中,只有很少量元素不在自己最终的正确位置上,但离他们的正确位置都不远,则使用直接插入排序方法最好。
8. 已知有向图的邻接矩阵,要计算i号顶点的入度,计算方法是:将i列元素累加。
9. n个顶点的强连通图至少有n 条边,至多有n(n-1) 条边。
二、判断正误(对的用”T”表示,错误的用”F”表示。
每小题1分,共10分)1. ( T )若一个有向图的邻接矩阵中对角线以下元素均为零,则该图的拓扑有序序列必定存在。
2. ( F )快速排序的速度在所有的排序方法中为最快,而且所需附加空间也最少。
3.( F )采用邻接表存储的图的深度优先遍历算法类似二叉树的按层次遍历算法。
4.(T )在待排序的元素序列基本有序的前提下,效率最高的是插入排序。
5.(T )图的广度优先遍历类似于树的层次遍历。
6.(T )拓扑排序时,总是在有向图中选择入度为0的顶点输出。
7.( F )若要求一个稠密图G的最小生成树,最好用Kruscal算法来求解。
8.(T )拓扑排序输出的顶点数小于有向图的顶点数,则该图一定存在回路。
9.(T )设有一稠密图G,则G采用邻接矩阵存储较省空间。
10.(F)n个顶点e条边的图采用邻接矩阵存储,深度优先遍历算法的时间复杂度为O(n+e)。
三、单项选择题(每小题2分,共20分)1.已知图的邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历的结点序列是 C 。
数据结构复习题(计算机大专)
数据结构复习题1一、选择题1. 以下四类基本的逻辑结构反映了四类基本的数据组织形式,解释错误的是 ( ) A 、集合中任何两个结点之间都有逻辑关系但组织形式松散 B 、线性结构中结点按逻辑关系依次排列形成一条"锁链"C 、树形结构具有分支、层次特性,其形态有点像自然界中的树D 、图状结构中的各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接2. 若结点的存储地址与其关键字之间存在某种映射关系,则称这种存储结构为( ) A 、顺序存储结构 B 、链式存储结构 C 、索引存储结构 D 、散列存储结构3. 在长度为n 的顺序表的第i (1≤i ≤n+1)个位置上插入一个元素,元素的移动次数为( ) A 、n-i+1 B 、n-i C 、i D 、i-14. 对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为( )A 、顺序表B 、用头指针表示的单循环链表C 、用尾指针表示的单循环链表D 、单链表5. 一个栈的入栈序列是a,b,c,d,e ,则栈的不可能的输出序列是( )A 、e d c b aB 、d e c b aC 、d c e a bD 、a b c d e6. 已知图1如右所示,若从顶点A 出发按深度优先搜索进行遍历,则可能得到的顶点序列为( ) A 、 A ,B ,E ,C ,D ,F B 、 A ,C ,F ,E ,B ,DC 、 A ,E ,B ,C ,F ,DD 、 A ,E ,D ,F ,C ,B7. n 个顶点的有向图中含有向边的数目最多为 ( )A 、n-1B 、nC 、n(n-1)/2D 、n(n-1) 8. 若一个栈的输入顺序是1,2,…,n ,输出序列的第一个元素是n ,则第i (1≤i ≤n )个输出元素是( )A 、n-iB 、n-i-1C 、i+1D 、n -i+1 9. 已给图2,( )是该图的正确的拓扑排序序列A 、1,2,3,4,5B 、1,3,2,4,5C 、1,2,4,3,5D 、1,2,3,5,4 10. 为查找某一特定单词在文本中出现的位置,可应用的串运算是( )A 、插入B 、删除C 、串联接D 、子串定位二、填空题A BC D E F 图1 1 2 34 5 图21.存储结构是逻辑结构的__________实现。
数据结构(专)阶段练习2
华东理工大学网络学院(专科)《数据结构》------第3章、第4章、第5章班级学号姓名成绩一、填空题(每空1分,共20分)1. 栈和队列是两种特殊的线性表,栈的特点是先进后出,表达式求值,栈的典型应用有和实现递归过程。
2. 在具有n个单元的循环队列中,队列满时共有n-1 个元素。
3. 若串的长度不能确定,可采用动态存储结构,为串值分配一个存储空间,同时建立一个串的描述子以指示串值的长度和串在存储空间中的位置,称该结构为堆/堆结构。
4. 稀疏矩阵一种常用的压缩存储方法称为三元组表方式,即每个三元组表中的元素由、行、列、值、三部分组成。
5. 二维数组A[10][20]采用列序为主方式存储,每个元素占10个存储单元,且A[0][0]的存储地址是2000,则A[6][12]的地址是3260 。
6.进栈序列为a,b,c,则通过出栈和进栈操作可能得到的a,b,c的不同的排列序列有5 种。
7. 广义表((a,b),c,d)的表头是(a, b) ,表尾是(c,d) 。
8.已知二维数组A[20][10]采用行序为主方式存储,每个元素占2个存储单元,并且A[10][5]的存储地址是1000,则A[18][9]的存储地址是1168 。
9. 广义表((((a),b),c),d)的表头是(((a),b),c) ,表尾是(d) 。
10. 设s=’YOU ARE JUDGING IT RIGHT OR WRONG’,顺序执行下列操作:SubString(sub1,s,1,8);SubString(sub2,s,20,5);StrCat(sub1,sub2); 则最后sub1的值为:’YOU ARE RIGHT’。
11. 假设用循环单链表实现队列,若队列非空,且队尾指针为R, 则将新结点S加入队列时,需执行下面语句:S->next=R->next ;R->next=S ;R=S 。
12.设有两个串p和q,求q在p中首次出现的位置的运算称作子串定位。
(完整版)数据结构练习题及参考答案
数据结构练习题第一部分绪论一、单选题1. 一个数组元素a[i]与________的表示等价。
A、 *(a+i)B、 a+iC、 *a+iD、 &a+i2. 对于两个函数,若函数名相同,但只是____________不同则不是重载函数。
A、参数类型B、参数个数C、函数类型3. 若需要利用形参直接访问实参,则应把形参变量说明为________参数A、指针B、引用C、值4. 下面程序段的时间复杂度为____________。
for(int i=0; i<m; i++)for(int j=0; j<n; j++)a[i][j]=i*j;A、 O(m2)B、 O(n2)C、 O(m*n)D、 O(m+n)5. 执行下面程序段时,执行S语句的次数为____________。
for(int i=1; i<=n; i++)for(int j=1; j<=i; j++)S;A、 n2B、 n2/2C、 n(n+1)D、 n(n+1)/26. 下面算法的时间复杂度为____________。
int f( unsigned int n ) {if ( n==0 || n==1 ) return 1; else return n*f(n-1);}A、 O(1)B、 O(n)C、 O(n2)D、 O(n!)二、填空题1. 数据的逻辑结构被分为__________、_________、__________和__________四种。
2. 数据的存储结构被分为__________、_________、__________和__________四种。
3. 在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着________、________和________的联系。
4. 一种抽象数据类型包括__________和__________两个部分。
5. 当一个形参类型的长度较大时,应最好说明为_________,以节省参数值的传输时间和存储参数的空间。
数据结构练习题(含答案)
数据结构练习题习题1 绪论1.1 单项选择题1. 数据结构是一门研究非数值计算的程序设计问题中,数据元素的①、数据信息在计算机中的②以及一组相关的运算等的课程。
① A.操作对象B.计算方法C.逻辑结构D.数据映象② A.存储结构B.关系C.运算D.算法2. 数据结构DS(Data Struct)可以被形式地定义为DS=(D,R),其中D是①的有限集合,R是D上的②有限集合。
① A.算法B.数据元素C.数据操作D.数据对象② A.操作B.映象C.存储D.关系3. 在数据结构中,从逻辑上可以把数据结构分成。
A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构4. 算法分析的目的是①,算法分析的两个主要方面是②。
① A. 找出数据结构的合理性 B. 研究算法中的输入和输出的关系C. 分析算法的效率以求改进D. 分析算法的易懂性和文档性② A. 空间复杂性和时间复杂性 B. 正确性和简明性C. 可读性和文档性D. 数据复杂性和程序复杂性5. 计算机算法指的是①,它必具备输入、输出和②等五个特性。
① A. 计算方法 B. 排序方法C. 解决问题的有限运算序列D. 调度方法② A. 可行性、可移植性和可扩充性 B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性D. 易读性、稳定性和安全性1.2 填空题(将正确的答案填在相应的空中)1. 数据逻辑结构包括、和三种类型,树形结构和图形结构合称为。
2. 在线性结构中,第一个结点前驱结点,其余每个结点有且只有个前驱结点;最后一个结点后续结点,其余每个结点有且只有个后续结点。
3. 在树形结构中,树根结点没有结点,其余每个结点有且只有个直接前驱结点,叶子结点没有结点,其余每个结点的直接后续结点可以。
4. 在图形结构中,每个结点的前驱结点数和后续结点数可以。
5. 线性结构中元素之间存在关系,树形结构中元素之间存在关系,图形结构中元素之间存在关系。
专科《数据结构》_试卷_答案
专科《数据结构》一、(共75题,共150分)1. 数据的逻辑结构在计算机内部存储表示称为为数据的()。
(2分)A.数据结构B.逻辑关系C.物理结构D.数据元素的内部结构.标准答案:C2. ()是数据的不可分割的最小单位。
(2分)A.数据对象B.数据元素C.数据类型D.数据项.标准答案:D3. 算法的时间复杂度是对算法()的度量。
(2分)A.时间效率B.空间效率C.可读性D.健壮性.标准答案:A4. ()是限制了插入和删除操作在一端进行的线性表。
(2分)A.栈B.队列C.串D.数组.标准答案:A5. 数组通常采用顺序存储的优点是()。
(2分)A.便于增加存储空间B.便于依据下标进行随机存取C.避免数据元素的移动D.防止下标溢出.标准答案:B6. 采用带头结点双向链表存储的线性表,在插入一个元素时,需要修改指针()次。
(2分)A.1B.2C.3D.4.标准答案:D7. 线性表的顺序存储结构是一种()的存储结构。
(2分)A.顺序存取B.随机存取C.索引存取D.Hash存取.标准答案:B8. 数组a[1..256]采用顺序存储,a的首地址为10,每个元素占2字节,则a[21]的地址是()。
(2分)A.10B.30C.50D.70.标准答案:C 9. 深度为4的二叉树,第4层至少有()个结点。
(2分)A.0B.1C.8D.15.标准答案:B10. 若二叉树对应的二叉链表共有11个非空链域,则该二叉树有()个结点的二叉树。
(2分)A.10B.11C.20D.21.标准答案:A11. 下面叙述错误的是()。
(2分)A.借助于队列可以实现对二叉树的层遍历B.栈的特点是先进后出C.对于单链表进行插入操作过程中不会发生上溢现象D.在无向图的邻接矩阵中每行1的个数等于对应的顶点度.标准答案:C12. 以下与数据的存储结构无关的术语是()。
(2分)A.循环队列B.双向链表C.哈希表D.数组.标准答案:D13. 在一个长度为n的链式队列中入队实现算法的时间复杂度为()。
数据结构(大专)第一章习题解答
数据结构(大专)第一章习题解答第一章绪论1.2 设计二次多项式ax2+bx+c的一种抽象数据类型,假定起名为QUAdratic,该类型的数据部分为三个系数项a、b和c,操作部分为:1.初始化数据成员a、b和c(假定用记录类型Quadratic定义数据成员),每个数据成员的默认值为0。
Qiadratic InitQuadratic(float aa=0, float bb=0, float cc=0);解:Quadratic InitQuadratic(float aa, float bb, float cc){Quadratic q;q·a=aa;q·b=bb;q·c=cc;return q;}2.做两个多项式加法,即使对应的系数相加,并返回相加结果。
解:Quadratic Add(Quadratic q1,Quadratic q2);{Quadratic q;q·a=q1·a+q2·a;q·b=q1·b+q2·b;q·c=q1·c+q2·c;retirn q;}3.据给定x的值计算多项式的值。
float Eval(Quadratic q,float x);解:float Eval(Quadratic q, float x){return(q·a*x*x+q·b*x+q·c);}4.计算方程ax2+bx+c=0的两个实数根,对于有实根、无实根和不是二次方程(即a= =0)这三种情况都要返回不同的整数值,以便调用函数做不同的处理。
int Root(Quadratic q, float& r1, float& r2);解:int Root (Quadratic q, float& r1, float& r2){if(q·a= =0) return –1;float x =q·b*q·b –4*q·a*q·c;if(x﹥=0){r1=(float) (-q·b+sqrt(x))/ (2*q·a);r2=(float) (-q·b-sqrt(x))/ (2*q·a);return 1;}elsereturn 0;}5.按照ax **2+bx+c的格式(x2用x **2表示)输出二次多项式,在输出时在注意去掉系数为0的项,并且当b和c的值为负时,其前不能出现加号。
数据结构考试试题及答案
数据结构考试试题及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用什么类型的数据结构来实现?A. 栈B. 队列C. 数组D. 链表答案:C2. 下列选项中,哪一个不是二叉树的性质?A. 任意节点的左子树和右子树的深度可能不同B. 任意节点的左子树和右子树的深度相同C. 任意节点的左子树和右子树的节点数可能不同D. 任意节点的左子树和右子树的节点数相同答案:B3. 哈希表的冲突解决方法不包括以下哪种?A. 开放定址法B. 链地址法C. 线性探测法D. 排序法答案:D4. 以下哪种排序算法的时间复杂度最低?A. 冒泡排序B. 快速排序C. 插入排序D. 归并排序答案:B5. 在图的遍历算法中,深度优先搜索(DFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:B6. 以下哪种数据结构可以有效地实现稀疏矩阵的存储?A. 顺序存储B. 链表C. 散列D. 邻接矩阵答案:C7. 在二叉搜索树中,插入一个新节点后,树的平衡因子可能为:A. -2B. 0C. 2D. 3答案:A8. 堆数据结构中,父节点的值总是大于其子节点的值,这种堆被称为:A. 最小堆B. 最大堆C. 完全二叉树D. 满二叉树答案:B9. 以下哪个算法不是动态查找表的算法?A. 直接查找B. 二分查找C. 斐波那契查找D. 哈希查找答案:A10. 在图的遍历算法中,广度优先搜索(BFS)使用的栈是:A. 系统栈B. 显式栈C. 隐式栈D. 以上都不是答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种______结构,遵循后进先出(LIFO)的原则。
答案:线性2. 一个具有n个顶点的无向图的边数最多为______。
答案:n*(n-1)/23. 快速排序算法的时间复杂度在最坏情况下为______。
答案:O(n^2)4. 在哈希表中,如果一个关键字的哈希地址已经被占用,则需要进行______。
数据结构练习题及参考答案
数据结构练习题第一部分绪论一、单选题1. 一个数组元素a[i]与________的表示等价。
A、 *(a+i)B、 a+iC、 *a+iD、 &a+i2. 对于两个函数,若函数名相同,但只是____________不同则不是重载函数。
A、参数类型B、参数个数C、函数类型3. 若需要利用形参直接访问实参,则应把形参变量说明为________参数A、指针B、引用C、值4. 下面程序段的时间复杂度为____________。
for(int i=0; i<m; i++)for(int j=0; j<n; j++)a[i][j]=i*j;A、 O(m2)B、 O(n2)C、 O(m*n)D、 O(m+n)5. 执行下面程序段时,执行S语句的次数为____________。
for(int i=1; i<=n; i++)for(int j=1; j<=i; j++)S;A、 n2B、 n2/2C、 n(n+1)D、 n(n+1)/26. 下面算法的时间复杂度为____________。
int f( unsigned int n ) {if ( n==0 || n==1 ) return 1; else return n*f(n-1);}A、 O(1)B、 O(n)C、 O(n2)D、 O(n!)二、填空题1. 数据的逻辑结构被分为__________、_________、__________和__________四种。
2. 数据的存储结构被分为__________、_________、__________和__________四种。
3. 在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着________、________和________的联系。
4. 一种抽象数据类型包括__________和__________两个部分。
5. 当一个形参类型的长度较大时,应最好说明为_________,以节省参数值的传输时间和存储参数的空间。
数据结构复习题(计算机大专)
数据结构复习题(计算机大专)一、什么是数据结构数据结构是计算机科学中一种重要的基础概念,它涉及组织、管理和存储数据的方式。
数据结构可以是线性的,如数组和链表;也可以是非线性的,如树和图。
数据结构的设计和选择对于解决问题以及实现高效的算法至关重要。
二、数组数组是一种线性数据结构,它由相同类型的元素组成,通过索引访问。
数组在内存中是连续存储的,因此具有快速的随机访问能力。
例如,int型数组arr可以通过arr[i]的方式访问第i个元素。
三、链表链表也是一种线性数据结构,但它的元素分散在内存中的不同位置。
链表的每个节点包含数据和指向下一个节点的指针。
链表的插入和删除操作相对较快,但访问特定元素需要遍历整个链表。
四、栈栈是一种特殊的线性数据结构,它遵循先进后出(LIFO)原则。
栈的插入和删除操作仅限于栈顶,其他元素无法直接访问。
栈常用于递归函数、表达式求值和内存管理等方面。
五、队列队列也是一种线性数据结构,它遵循先进先出(FIFO)原则。
队列的插入操作在队尾进行,删除操作在队头进行。
队列常用于广度优先搜索和进程调度等方面。
六、树树是一种非线性数据结构,它由节点组成,并通过指针相互连接。
每个节点有零个或多个子节点,以及一个父节点(除了根节点)。
树广泛用于搜索、排序和组织数据等场景。
七、图图也是一种非线性数据结构,它由节点和边组成。
节点表示实体,边表示节点之间的关系。
图可以是有向的或无向的,用于表示网络、地图和社交网络等。
八、堆堆是一种特殊的树形数据结构,它满足堆属性:对于每个节点,其父节点的值大于等于(或小于等于)其子节点的值。
堆常用于实现优先队列和堆排序算法。
九、散列表散列表是一种利用哈希函数进行快速访问的数据结构。
它将键映射到哈希表中的一个位置以存储值。
散列表常用于查找、缓存和关联数组等场景。
十、图的遍历图的遍历是指访问图中的每个节点。
常见的遍历方法有深度优先搜索(DFS)和广度优先搜索(BFS)。
图的遍历可以用于寻找路径、连通性检测等。
数据结构考试题库及答案
数据结构考试题库及答案一、选择题1. 下列哪个不是线性结构?A. 栈B. 队列C. 双向链表D. 树答案:D2. 在顺序存储结构中,数据元素的物理位置与逻辑位置相同的是哪种结构?A. 栈B. 队列C. 线性表D. 树答案:C3. 下列哪种排序算法的时间复杂度是O(nlogn)?A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C4. 在二叉树中,度为0的节点称为()。
A. 根节点B. 内节点C. 叶子节点D. 父节点答案:C5. 下列哪种图的邻接矩阵是对称的?A. 有向图B. 无向图C. 有向连通图D. 无向连通图答案:B二、填空题6. 在链表中的每个节点至少包含两个部分:一个是存储数据元素的数据域,另一个是存储下一个节点地址的指针域。
7. 在顺序表中,元素之间的逻辑关系是由它们的相对位置来体现的。
8. 快速排序的基本思想是:在待排序序列中选取一个基准元素,将序列中所有小于基准元素的元素放在基准元素前面,所有大于基准元素的元素放在基准元素后面。
9. 图中的每个节点称为顶点,顶点之间的连线称为边。
10. 在哈希表中,哈希函数的目的是将关键字映射到散列地址。
三、判断题11. 在顺序表中插入一个元素的时间复杂度为O(1)。
()答案:错误。
插入一个元素的时间复杂度为O(n),因为可能需要移动其他元素。
12. 在链表中删除一个元素的时间复杂度为O(n)。
()答案:错误。
删除一个元素的时间复杂度为O(1),只要找到该元素的前一个节点即可。
13. 二分查找只适用于有序的顺序表。
()答案:正确。
14. 在二叉树中,任意节点的度数不会超过2。
()答案:正确。
15. 图的邻接表表示法比邻接矩阵表示法更加节省空间。
()答案:正确。
四、应用题16. 请用C语言实现一个顺序栈的数据结构,并给出入栈、出栈和判断栈空的操作。
答案:```c#define MAXSIZE 100typedef struct {int data[MAXSIZE];int top;} SeqStack;// 初始化栈void InitStack(SeqStack s) {s->top = -1;}// 判断栈是否为空int StackEmpty(SeqStack s) {return s->top == -1;}// 入栈int Push(SeqStack s, int x) {if (s->top == MAXSIZE - 1) {return 0; // 栈满}s->data[++s->top] = x;return 1;}// 出栈int Pop(SeqStack s, int x) {if (s->top == -1) {return 0; // 栈空}x = s->data[s->top--];return 1;}```17. 请简述二分查找的基本思想。
专科数据结构期末复习资料.
数据结构期末复习资料一、单项选择题1.以下叙述中正确的是(A 。
A. 串是一种特殊的线性表B. 串的长度必须大于零C. 串中无素只能是字母D. 空串就是空白串2. 一个向量 (即一批地址连续的存储单元第一个元素的存储地址是 100, 每个元素的长度为 2,则第 5个元素的地址是(B 。
A. 110B. 108C. 100D. 1203. 一个栈的入栈序列 a , b , c , d , e ,则栈的不可能的输出序列是(C 。
A. edcbaB. decbaC. dceabD. abcde4. 栈和队列的共同点是(C 。
A. 都是先进后出B. 都是先进先出C. 只允许在端点处插入和删除元素D. 没有共同点5. 按照二叉树的定义,具有 3个结点的不同形状的二叉树有(C 种。
A. 3 B. 4 C.5 D. 66. 在待排序的元素序列基本有序的前提下,效率最高的排序方法是(A 。
A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序7. 在一个单链表中, 已知 q 所指结点是 p 所指结点的前驱结点, 若在 q 和 p 之间插入 s 结点,则执行(B 。
A. s->next=p->next; p->next=s;B. q->next=s; s->next=p;C. p->next=s; s->next=q;D. p->next=s->next; s->next=p;8. 深度为 5的二叉树至多有(C 个结点。
A. 16B. 32C. 31D. 109. 从一个具有 n 个结点的单链表中查找其值等于 x 结点时, 在查找成功的情况下,需平均比较(D 个结点。
A. nB. n/2C. (n-1/2D. (n+1/210. 判定一个循环队列 QU (最多元素为 m0, m0= =Maxsize-1 为满队列的条件是(A 。
A. ((rear- front+ Maxsize% Maxsize = =m0B. rear-front-1= =m0C. front= =rearD. front= = rear+111.算法分析的两个主要方面是(A 。
临沂大学数据结构复习题专科
数据结构期末考试题一、选择题1.在数据结构中,从逻辑上可以把数据结构分为 C 。
A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.数据结构在计算机内存中的表示是指 A 。
A.数据的存储结构B.数据结构C.数据的逻辑结构D.数据元素之间的关系3.在数据结构中,与所使用的计算机无关的是数据的 A 结构。
A.逻辑B.存储C.逻辑和存储D.物理4..在存储数据时,通常不仅要存储各数据元素的值,而且还要存储C 。
A.数据的处理方法B.数据元素的类型C.数据元素之间的关系D.数据的存储方法5.在决定选取何种存储结构时,一般不考虑 A 。
A.各结点的值如何B.结点个数的多少C.对数据有哪些运算D.所用的编程语言实现这种结构是否方便。
6.以下说法正确的是 D 。
A.数据项是数据的基本单位B.数据元素是数据的最小单位C.数据结构是带结构的数据项的集合D.一些表面上很不相同的数据可以有相同的逻辑结构7.算法分析的目的是 C ,算法分析的两个主要方面是 A 。
(1)A.找出数据结构的合理性B.研究算法中的输入和输出的关系C.分析算法的效率以求改进C.分析算法的易读性和文档性(2)A.空间复杂度和时间复杂度B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性8.下面程序段的时间复杂度是O(n2)。
s =0;for(I =0;i<n;i++)for(j=0;j<n;j++)s +=B[i][j];sum =s ;9.下面程序段的时间复杂度是O(n*m)。
for(i =0;i<n;i++)for(j=0;j<m;j++)A[i][j] =0;10.下面程序段的时间复杂度是O(log3n)。
i =0;while(i<=n)i =i * 3;11.在以下的叙述中,正确的是 B 。
A.线性表的顺序存储结构优于链表存储结构B.二维数组是其数据元素为线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出12.通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着B 。
数据结构考试题库专科
数据结构考试题库专科# 数据结构考试题库专科一、选择题1. 在数据结构中,线性表是:- A. 有序的- B. 无序的- C. 可以是有序的也可以是无序的- D. 以上都不是2. 栈(Stack)是一种特殊的线性表,其特点是:- A. 只能在表头进行插入和删除操作- B. 只能在表尾进行插入和删除操作- C. 同时在表头和表尾进行插入和删除操作- D. 只能在表中任意位置进行插入和删除操作3. 队列(Queue)的特点是:- A. 只能在表头进行插入操作,在表尾进行删除操作 - B. 只能在表尾进行插入操作,在表头进行删除操作 - C. 同时在表头和表尾进行插入和删除操作- D. 只能在表中任意位置进行插入和删除操作4. 链表相比于数组的优点是:- A. 访问速度快- B. 插入和删除操作不需要移动元素- C. 内存占用少- D. 以上都是5. 二叉树的遍历方式不包括:- A. 前序遍历- B. 中序遍历- C. 后序遍历- D. 随机遍历二、填空题1. 在数据结构中,______ 是最基本的数据结构,它由一组数据元素和定义在这些元素上的一组操作组成。
2. 栈的两个基本操作是______ 和 ______。
3. 队列的两个基本操作是______ 和 ______。
4. 链表是由一系列______ 结点组成的。
5. 树的度是指树中一个节点最多拥有的______ 数量。
三、简答题1. 简述线性表的逻辑结构特点。
2. 描述栈的后进先出(LIFO)特性,并举例说明其应用场景。
3. 说明队列的先进先出(FIFO)特性,并举例说明其应用场景。
4. 什么是二叉搜索树?其主要特点是什么?5. 什么是图?图的表示方法有哪些?四、应用题1. 给定一个数组,请编写一个算法,实现对该数组的排序,并说明所使用的排序算法的时间复杂度。
2. 描述如何使用链表实现一个简单的队列,并说明其优缺点。
3. 给定一棵二叉树,请编写一个算法实现其前序遍历,并画出相应的遍历过程。
十套数据结构试题及答案
数据构造试卷〔一〕一、单项选择题〔每题 2 分,共20分〕1.栈和队列的共同特点是( a )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进展插入运算时( d ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据构造中哪一个是非线性构造?( d )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
cA.688 B.678 C.692 D.6965.树最适合用来表示( c )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( d ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.假设有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进展二分查找,那么查找A[3]的比拟序列的下标依次为( c d)A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进展快速排序,所需要的辅助存储空间大致为 cA. O〔1〕B. O〔n〕C. O〔1og2n〕D. O〔n2〕9.对于线性表〔7,34,55,25,64,46,20,10〕进展散列存储时,假设选用H〔K〕=K %9作为散列函数,那么散列地址为1的元素有〔 c d〕个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( a )条边才能确保是一个连通图。
二、填空题〔每空1分,共26分〕1.通常从四个方面评价算法的质量:____时间正确性_____、____占用内存_易读性____、____复杂度__强壮性___和_____准确度_ 高效率___。
数据结构试题及答案
数据结构试题及答案一、选择题1. 以下哪种数据结构是线性结构?A. 树B. 图C. 链表D. 集合答案:C2. 在二叉搜索树中,若删除一个节点,则需要进行的操作是:A. 直接删除B. 删除后不进行任何操作C. 删除后找到其前驱或后继节点替换D. 删除后将树旋转答案:C3. 快速排序算法的时间复杂度在最坏情况下是:A. O(log n)B. O(n)C. O(n log n)D. O(n^2)答案:D4. 下面关于图的遍历描述,正确的是:A. 只能使用深度优先搜索B. 只能使用广度优先搜索C. 可以使用深度优先搜索和广度优先搜索D. 以上都不是答案:C5. 在哈夫曼树中,权值最大的叶子节点与权值最小的叶子节点的深度差是:A. 0B. 1C. 树的高度D. 树的深度减1答案:B二、填空题1. 请写出一个数组的插入操作的时间复杂度:_________。
答案:O(n)2. 请写出一个二叉树的高度计算的递归算法的时间复杂度:_________。
答案:O(n)3. 请写出一个哈希表的查找操作的平均时间复杂度(假设哈希函数是最优的):_________。
答案:O(1)4. 请写出一个图的邻接矩阵表示法中,查找顶点v的所有邻接顶点的时间复杂度:_________。
答案:O(n)5. 请写出一个二分查找算法的递归实现的时间复杂度:_________。
答案:O(log n)三、判断题1. 链表结构比数组结构更加节省内存。
()答案:×2. 堆排序是一种稳定的排序算法。
()答案:×3. 红黑树是一种自平衡二叉搜索树。
()答案:√4. 拓扑排序适用于有向无环图。
()答案:√5. 散列表通过开放寻址法解决冲突时,可能需要移动其他元素。
()答案:√四、简答题1. 请简述栈和队列的区别。
答案:栈和队列都是线性数据结构,但它们的主要区别在于元素的添加和移除顺序。
栈遵循后进先出(LIFO)的原则,即最后添加的元素会最先被移除。
(完整版)数据结构练习题及参考答案
数据结构练习题第一部分绪论一、单选题1. 一个数组元素a[i]与________的表示等价。
A、 *(a+i)B、 a+iC、 *a+iD、 &a+i2. 对于两个函数,若函数名相同,但只是____________不同则不是重载函数。
A、参数类型B、参数个数C、函数类型3. 若需要利用形参直接访问实参,则应把形参变量说明为________参数A、指针B、引用C、值4. 下面程序段的时间复杂度为____________。
for(int i=0; i<m; i++)for(int j=0; j<n; j++)a[i][j]=i*j;A、 O(m2)B、 O(n2)C、 O(m*n)D、 O(m+n)5. 执行下面程序段时,执行S语句的次数为____________。
for(int i=1; i<=n; i++)for(int j=1; j<=i; j++)S;A、 n2B、 n2/2C、 n(n+1)D、 n(n+1)/26. 下面算法的时间复杂度为____________。
int f( unsigned int n ) {if ( n==0 || n==1 ) return 1; else return n*f(n-1);}A、 O(1)B、 O(n)C、 O(n2)D、 O(n!)二、填空题1. 数据的逻辑结构被分为__________、_________、__________和__________四种。
2. 数据的存储结构被分为__________、_________、__________和__________四种。
3. 在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着________、________和________的联系。
4. 一种抽象数据类型包括__________和__________两个部分。
5. 当一个形参类型的长度较大时,应最好说明为_________,以节省参数值的传输时间和存储参数的空间。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构练习题(专科)一、简答题1.什么是拓扑排序?2.什么是堆积?3.图的邻接矩阵与邻接表两种存储表示法在空间代价上的差别为何?4.算法与程序的区别是什么?5.什么是堆(heap)?6.什么是栈(stack)?7.什么样的图遍历后由所有顶点和遍历时所经过的边所构成的子图一定是生成树?8.举例说明希尔(Shell)排序是否是稳定的排序方法?9.什么是遍历运算?10.什么是AVL树?11.链表中的表头指针、表头结点和开始结点有什么不同?各自所起的作用是什么?12.举例说明直接选择排序是否是稳定的排序方法?13.什么是完全二叉树(complete binary tree) ?14.什么是稀疏矩阵(sparse matrix) ?15.试述链接存储结构的优缺点。
16.什么是AVL树,它与最佳二叉排序树最主要的差别是什么?17.什么是假溢出?18.什么是排序算法的“稳定性”?19.设高度为h的二叉树中只有度为0和度为2的结点,问此类二叉树中的结点数可能达到的最大值和最小值各为多少?20.顺序查找、折半查找和分块查找各自的平均查找长度ASL是多少?二、单选题1.顺序表中逻辑上相邻的结点其物理位置也( )。
A.一定相邻B.不必相邻C.按某种规律排列D.无要求2.下面关于串的叙述中,哪一个是不正确的? ( )A.串是字符的有限序列C.模式匹配是串的一种重要运算B.空串是由空格构成的串D.串既可以采用顺序存储,也可以采用链式存储3.某二叉树结点的前序序列为ECBAD,中序序列为EBCDA,则该二叉树结点的后序序列为( )。
A.ABCED B.DECAB C.DEABC D.BDACE4. 设二维数组A[m][n] 按列优先顺序存储且每个元素占c个单元,则元素A[i][j] 的地址为()。
A.LOC(A[0][0])+(j*m+i)*c B.LOC(A[0][0])+(i*n+j)*cC.LOC(A[0][0])+[(j-1)*m+i-1]*c D.LOC(A[0][0])+[(i-1)*n+j-1]*c5.在下述几种排序方法中,不稳定的排序方法是()。
A.直接插入排序B.冒泡排序C.直接选择排序D.归并排序6.散列函数有一个共同的性质,即函数值应当以下面的哪一项来取其值域的每个值()。
A.同等概率B.最大概率C.最小概率D.平均概率7.在有n个结点的顺序表中进行插入、删除运算,平均时间复杂度为( )。
A.Ο(1)B.Ο(n)C.Ο(log2n)D.Ο(n2 )8.设s1="abc",则strlen(s1) = ( )。
A.0 B.1 C.2 D.39. 完全二叉树是下列情况的哪一种( )。
A.一定是满二叉树B.可能是满二叉树C.一定不是满二叉树D.不是二叉树10. 下列说法不正确的是( )。
A.图的遍历是从给定的源点出发每个顶点仅被访问一次B.遍历的基本方法有两种:深度优先遍历和广度优先遍历C.图的深度遍历不适用于有向图D.图的深度优先遍历是一个递归过程11. 数组A[6,7] 的每个元素占5个字节,将其按列优先次序存储在起始地址为1000的内存单元中,则元素A[5,5] 的地址是( )。
A.1165 B.1170 C.1175 D.118012. 在下面的排序方法中,其比较次数与待排序记录的初始排列状态无关的是( )。
A.直接插入排序B.快速排序C.直接选择排序D.归并排序13.在栈中存取数据的原则是( )。
A.先进先出B.后进先出C.后进后出D.随意进出14.设有两个串s1和s2,求s2在s1中首次出现的位置的运算称为( )。
A.求子串B.求串长C.联接D.模式匹配15. 堆的形状是一棵( )。
A.二叉排序树B.满二叉树C.完全二叉树D.A VL树16. 求图的最小生成树问题,考虑的是下面的哪一种图( )。
A.无向图B.有向图C.带权的无向图D.带权的有向图17. 广义表A=(a, b, ( c, d ) , (e,( f , g ) ) ),则式子head ( tail ( head ( tail ( tail ( A ) ) ) ) )的值为()。
A.( g ) B.( d ) C.c D.d18. 设有n个结点的二叉排序树,对于成功的查找,最多的比较次数为( )。
A.Ο( 1) B.Ο(log2n) C.Ο(n) D.Ο(nlog2n)19.经过下列栈的操作后,GetTop(ST)的值是( )。
InitStack(ST); push(ST,'a'); push(ST,'b'); pop(ST,x);A.a B.b C.1 D.220.空串与空格串是相同的,这种说法( ) 。
A.正确B.可能正确C.不正确D.可能不正确21. 在线索二叉树中,p所指结点没有右子树的充要条件是( )。
A.p->rchild == NULL B.p->rtag == 1C.p->rtag == 1且p->rchild == NULL D.p->rtag == 022. 有n个顶点的无向连通图的边数最少为( )。
A.n/2 B.n-1C.n D.n+123. 设广义表L = ( ( a , b , c ) ),则L的长度和深度分别为( )。
A.1和1B.1和3 C.1和2 D.2和324. 折半查找要求结点( )。
A.无序、顺序存储B.无序、链接存储C.有序、顺序存储D.有序、链接存储25.一个栈的入栈序列是a、b、c、d,则栈的不可能的输出序列是( )。
A.acbd B.abcd C.dbca D.adcb26.串是一种特殊的线性表,其特殊性体现在( )。
A.可以顺序存储B.数据元素是一个字符C.可以链接存储D.数据元素可以是多个字符27. 在k叉树中,无父母的结点称为( )。
A.根B.叶C.祖先D.子孙28. 采用邻接表存储的图的广度优先遍历类似于二叉树的( )。
A.前序遍历B.中序遍历C.后序遍历D.层次遍历29. 下列四个序列中,哪一个是堆( ) 。
A.75 , 65 , 30 , 15 , 25 , 45 , 20 , 10 B.75 , 65 , 45 , 10 , 30 , 25 , 20 , 15C.75 , 45 , 65 , 30 , 15 , 25 , 20 , 10 D.75 , 45 , 65 , 10 , 25 , 30 , 20 , 1530. 如果要求线性表既能较快地查找、又能适应动态变化的要求,则可采用的查找方法是( )。
A.顺序查找B.折半查找C.分块查找D.基于属性的查找三、判断题1. 数据的逻辑结构是指数据的各数据项之间的逻辑关系。
()2.链表中的表头结点仅起到标识的作用。
()3.哈夫曼树是带权(外部)路径长度最短的树,路径上权值较大的结点离根较近。
()4.在有向图中,度为0的顶点称为终端顶点(或叶子)。
()5.归并排序在任何情况下都比所有简单的排序方法速度快。
()6. 折半查找法的查找速度一定比顺序查找法快。
()7. 健壮的算法不会因非法的输人数据而出现莫名其妙的状态。
()8.循环链表不是线性表。
()9.完全二叉树的存储结构通常采用顺序存储结构。
()10. 无向图的邻接矩阵可用一维数组存储。
()11. 归并排序的辅助存储空间代价为O( 1 )。
()12. 分块查找在等概率查找情况下,其平均查找长度不仅与表中元素个数有关,而且与每块中的元素个数有关。
()13. 为了方便的插入和删除数据,可以使用双向链表来存放数据。
()14.给定一棵树,可以找到唯一的一棵二叉树与之对应。
()15.邻接矩阵适用于有向图和无向图的存储,但不能存储带权的有向图和无向图,而只能使用邻接表存储形式来存储它。
()16. 当广义表中的每个元素都是原子时,广义表便成了线性表。
()17. 堆是满二叉树。
()18. 对一棵二又排序树按前序方法遍历得到的结点序列是从小到大的序列。
()19. 链接存储结构属动态存储方式。
()20. 采用二叉链表作为存储结构,树的先根遍历和相应的二叉树的前序遍历的结果是一样的。
()21. 带权的连通无向图的最小(代价)生成树必是唯一的。
()22. 广义表的取表尾运算,其结果通常是一个表,但有时也可能是一个单元素值。
()23. 在待排数据基本有序的情况下,快速排序效果最好。
()24. 在A VL树中,向某个平衡因子不为零的结点的树中插入一新结点,必引起平衡旋转。
()25. 数据的存储结构是数据的逻辑结构在计算机存储器上的实现,它是依赖于计算机的。
()26.在指定结点之后插入新结点时,双链表比单链表更方便。
()27.二叉树的遍历只是为了在应用中找到一种线性次序。
()28. 拓扑排序算法仅适用于有向无环图。
()29. 数组是同类型值的集合。
()30. 哈希法的平均查找长度不随表中结点数目的增加而增加,而是随负载因子的增大而增大。
()四、填空题1. head指向的不带表头结点的单链表为空的条件是。
2.具有256个结点的完全二叉树(设根结点的层数为0)的深度为。
3.二维数组A[10][20]采用了行优先的顺序进行存储,每个元素占一个存储单元,并且A[0][0]的存储地址是300,则A[6][12]的地址是。
4.排序是将一组任意排列的记录按的值从小到大或从大到小重新排列成有序的序列。
5. 散列表的查找效率主要取决于散列表造表时选取的和。
6.数据的运算是定义在数据的结构之上的。
7. 对于一个具有n个结点的单链表,在已知p所指结点后插入一个新结点的时间复杂度是;在给定值为x的结点后插入一个新结点的时间复杂度是。
8. 树中结点的最大度数称为树的。
9. 为了实现图的广度优先搜索,除了对已访问的图的结点进行标记外,还需以存放被访问的结点以实现遍历。
10. 在堆排序和快速排序中,若初始记录接近正序或反序,则应选用。
11.在具有n个结点的双链表中进行插入、删除运算,其时间复杂度为。
12. 已知二叉树有50个叶结点,则该二叉树的总结点数至少是。
13. 在有n个顶点的有向图中,若要使任意两点间可以互相到达,则至少需要条有向边(弧)。
14. 选择合适的是解决应用问题的关键步骤。
15. 对于两棵具有而形状不同的二叉排序树,遍历它们得到的结点序列是一样的。
16.在有n个结点的顺序表中进行插入、删除运算,其平均时间复杂度为。
17. 二叉树的前序序列和中序序列相同的条件是。
18. 对于n个顶点、e条边的图,若采用邻接表进行存储,则空间复杂度为。
19. 对n个记录的表R [ l .. n ]进行直接选择排序,所需进行的排序码之间的比较次数为。
20. 有900个结点的线性表若采用分块查找(检索)的方法,最好每块应含有个结点;若按每块含有25个结点来分块并对索引表也采用顺序查找,则平均查找长度为。