数据结构在线自测
数据结构测试
![数据结构测试](https://img.taocdn.com/s3/m/95249ad3185f312b3169a45177232f60ddcce76f.png)
数据结构测试1.下面叙述正确的是______。
()A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数(指的是算法所占用的空间)C.算法的有穷性是指算法必须能在执行有限个步骤之后终止(正确答案)D.以上三种描述都不对2.以下数据结构中不属于线性数据结构的是______。
()A.队列B.线性表C.二叉树(正确答案)D.栈3.在一棵二叉树上第5层的结点数最多是______。
()2n-1A.8B.16(正确答案)C.32D.154.算法的时间复杂度是指______。
()A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数(正确答案)D.算法程序中的指令条数5.下列叙述中正确的是______。
()A.线性表是线性结构(正确答案)B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构6.设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为______。
()A.349B.350(正确答案)C.255D.3517.算法的空间复杂度是指______。
()A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间(正确答案)8.下列关于栈的叙述中正确的是______。
()A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表(正确答案)9.在深度为5的满二叉树中,叶子结点的个数为______。
()A.32B.31C.16(正确答案)D.1510.数据的存储结构是指______。
()A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示(正确答案)C.数据在计算机中的顺序存储方式D.存储在外存中的数据11.在下列选项中,哪个不是一个算法一般应该具有的基本特征______。
()A.确定性B.可行性C.无穷性(正确答案)D.拥有足够的情报12.希尔排序法属于哪一种类型的排序法______。
数据结构排序自测卷答案
![数据结构排序自测卷答案](https://img.taocdn.com/s3/m/4b15ea6fa45177232f60a240.png)
第9章排序自测卷答案姓名班级一、填空题(每空1分,共24分)1. 大多数排序算法都有两个基本的操作:比较(两个关键字的大小)和移动(记录或改变指向记录的指针)。
2. 在对一组记录(54,38,96,23,15,72,60,45,83)进行直接插入排序时,当把第7个记录60插入到有序表时,为寻找插入位置至少需比较3次。
(可约定为,从后向前比较)3. 在插入和选择排序中,若初始数据基本正序,则选用插入排序(到尾部);若初始数据基本反序,则选用选择排序。
4. 在堆排序和快速排序中,若初始记录接近正序或反序,则选用堆排序;若初始记录基本无序,则最好选用快速排序。
5. 对于n个记录的集合进行冒泡排序,在最坏的情况下所需要的时间是O(n2) 。
若对其进行快速排序,在最坏的情况下所需要的时间是O(n2) 。
6. 对于n个记录的集合进行归并排序,所需要的平均时间是O(nlog2n) ,所需要的附加空间是O(n) 。
7.【计研题2000】对于n个记录的表进行2路归并排序,整个归并排序需进行log2n 趟(遍),共计移动n log2n次记录。
(即移动到新表中的总次数!共log2n趟,每趟都要移动n个元素)8.设要将序列(Q, H, C, Y, P, A, M, S, R, D, F, X)中的关键码按字母序的升序重新排列,则:冒泡排序一趟扫描的结果是H, C, Q, P, A, M, S, R, D, F, X ,Y;初始步长为4的希尔(shell)排序一趟的结果是P, A, C, S, Q, D, F, X , R, H,M, Y;二路归并排序一趟扫描的结果是H, Q, C, Y,A, P, M, S, D, R, F, X ;快速排序一趟扫描的结果是F, H, C, D, P, A, M, Q, R, S, Y,X;堆排序初始建堆的结果是A, D, C, R, F, Q, M, S, Y,P, H, X。
9. 在堆排序、快速排序和归并排序中,若只从存储空间考虑,则应首先选取堆排序方法,其次选取快速排序方法,最后选取归并排序方法;若只从排序结果的稳定性考虑,则应选取归并排序方法;若只从平均情况下最快考虑,则应选取快速排序方法;若只从最坏情况下最快并且要节省内存考虑,则应选取堆排序方法。
数据结构第六-九章自测题及解答
![数据结构第六-九章自测题及解答](https://img.taocdn.com/s3/m/1a27a1156c175f0e7cd137ab.png)
一、概念题(每空0.5分,共45分)1.对于集合这逻辑结构来说,其中的数据元素之间也可以有各种各样的非逻辑关系,但任何一对数据元素之间没有________关系,即没有________关系。
2.查找表按其所包括的运算的不同分为________查找表和________查找表。
3.查找表中主关键字指的是________,次关键字指的是________。
4.静态查找表包括________、________、________三种基本运算。
5.动态查找表包括________、________、________、________、________五种基本运算。
6.假定key为主关键字,若顺序表中第n个元素的键值为K,则顺序查找算法的查找长度为1;若第1个元素的键值为K,则查找长度为________;若表中无键值等于K的元素,则查找长度为________。
7.二分查找在查找成功时的查找长度不超过________,其平均查找长度为________,当n较大时约等于________。
8.静态查找表的三种不同实现各有优缺点。
其中,________查找效率最低但限制最少。
________查找效率最高但限制最强。
而________查找则介于上述二者之间。
9.二叉搜索树是一种特殊的、增加了限制条件的二叉树,其限制条件是任一结点的键值________于其左孩子(及其子孙)的键值且________于其右孩子(及其子孙)的键值。
10. 在表示一棵二叉搜索树的二叉链表上,要找键值比某结点X的键值________的结点,只需通过结点X的左指针到它的左子树中去找。
11.中序遍历一棵二叉搜索树所得的结点访问序列是键值的________序列。
12.二叉搜索树上的查找长度不仅与________有关,也与二叉搜索树的________有关。
13.在随机情况下,含有n个结点的二叉搜索树的平均查找长度为________,其时间效率很高。
14.折半查找的查找效率与树的形态有关。
数据结构在线考试
![数据结构在线考试](https://img.taocdn.com/s3/m/b4cee0f459eef8c75ebfb393.png)
数据结构在线考试学号:_________ 姓名:_________ 班级:_________ [填空题] *第一部分:基本部分1、算法评价中,( )是一个算法运行时间的相对量度。
[单选题] *○ A.可读性○ B.健壮性○ C.空间复杂度○ D.时间复杂度(正确答案)2、图形结构中的数据元素之间是一种( )关系。
[单选题] *○ A.一对一○ B.一对多○ C.多对多(正确答案)○ D.无结构3、在一个长度为n的顺序存储的线性表中,向第i个元素的位置插入一个新元素时,需要从后向前依次后移( )个元素。
[单选题] *○ A.n-i○ B.n-i+1(正确答案)○ C.n-i-1○ D.i4、如果常用的操作是取第i个结点及其前驱,则采用( )存储方式的时间复杂度最小。
[单选题] *○ A. 顺序存储(正确答案)○ B. 双链表○ C.单循环链表○ D. 单链表5、当线性表的元素总数不很稳定,且很多进行插入和删除操作,应采用( )存储结构。
[单选题] *○ A. 顺序存储○ B. 链式存储(正确答案)○ C.索引存储○ D. 散列存储6、栈和队列的共同特点是( )。
[单选题] *○ A、都是先进后出○ B、都是先进先出○ C、只允许在端点处插入和删除元素(正确答案)○ D、没有共同点7、一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是()。
[单选题] *○ A、edcba○ B、decba○ C、dceab(正确答案)○ D、abcde8、若已知一个栈的进栈序列是P1,P2,P3,……Pn,其输出序列为1,2,3,……,n,若P3=1,则P1为()。
[单选题] *○ A、可能是2○ B、一定是2○ C、不可能是2(正确答案)○ D、不可能是39、一个队列的入队序列是1,2,3,4,则队列的输出序列是()。
[单选题] *○ A、4,3,2,1○ B、1,2,3,4(正确答案)○ C、1,4,3,2○ D、3,2,4,110、一个栈的输入序列为123……n,若输出序列的第一个元素是n,则输出第i(1<==i<==n)个元素是()。
数据结构试卷试题及答案
![数据结构试卷试题及答案](https://img.taocdn.com/s3/m/52cc667e974bcf84b9d528ea81c758f5f61f29b6.png)
数据结构试卷试题及答案一、选择题(每题5分,共40分)1. 数据结构是研究数据元素的()A. 存储结构B. 处理方法C. 逻辑结构D. 所有以上内容答案:D2. 在数据结构中,通常采用()方式来表示数据元素之间的逻辑关系。
A. 顺序存储结构B. 链式存储结构C. 索引存储结构D. 散列存储结构答案:B3. 下面哪一个不是栈的基本操作?()A. 入栈B. 出栈C. 判断栈空D. 获取栈顶元素答案:D4. 下面哪一个不是队列的基本操作?()A. 入队B. 出队C. 判断队列空D. 获取队头元素答案:D5. 下面哪一个不是线性表的特点?()A. 有且只有一个根节点B. 每个节点最多有一个前驱和一个后继C. 数据元素类型相同D. 数据元素类型可以不同答案:D6. 在下列哪种情况中,使用链式存储结构比顺序存储结构更合适?()A. 数据元素经常插入和删除B. 数据元素大小不固定C. 数据元素个数不确定D. 所有以上情况答案:D7. 下面哪一个不是树的遍历方式?()A. 前序遍历B. 中序遍历C. 后序遍历D. 翻转遍历答案:D8. 在下列哪种情况中,使用散列存储结构比其他存储结构更合适?()A. 数据元素个数较少B. 数据元素查找频繁C. 数据元素插入和删除频繁D. 数据元素大小不固定答案:B二、填空题(每题5分,共30分)9. 栈是一种特殊的线性表,它的插入和删除操作都限定在表的一端进行,这一端称为______。
答案:栈顶10. 队列是一种特殊的线性表,它的插入操作在表的一端进行,这一端称为______,而删除操作在另一端进行,这一端称为______。
答案:队尾、队头11. 二叉树中的节点包括______和______。
答案:根节点、子节点12. 在图的存储结构中,邻接矩阵表示法用______个一维数组来表示图中各个顶点之间的关系。
答案:两个13. 散列存储结构中,关键码到存储地址的映射方法称为______。
数据结构自测题答案
![数据结构自测题答案](https://img.taocdn.com/s3/m/d4526329bcd126fff7050bed.png)
第1章绪论二、填空题1. 4种基本结构是:集合、线性结构、树形结构、图状结构。
2. 树形结构中元素的关系是一对多,图形结构中元素的关系是多对多。
3. 顺序存储结构中数据元素的存储位置与其逻辑顺序是对应的。
4. 算法效率的度量方法有:事后统计方法和事前分析估算方法。
5. 好算法应达到的目标:正确性、可读性、健壮性、执行时间短、存储量低。
6. 抽象数据类型可细分为3种:原子类型、固定聚合类型和可变聚合类型。
7. 抽象数据类型的定义包括:数据对象的定义、数据关系的定义、基本操作的定义。
三、判断题五、应用题1. 按增长率从小到大的顺序排列下列各函数:(2/3)n ,nlog,n ,n2 ,n!22. 写出以下各函数的功能,并求出其时间复杂度。
(1) 功能是判断n是否为素数,时间复杂度为O(√n ) 。
(2) 功能是计算1!+2!+…+n! ,时间复杂度为O(n ) 。
(3) 功能是计算1!+2!+…+n! ,时间复杂度为O(n2 ) 。
六、算法题1. 编写算法计算1!+2!+…+n!,并使算法的时间复杂度为O(n)。
算法思想:用循环实现阶乘的累加求和,注意在求n!时,使用前一次循环中已经求出的(n-1)!的结果。
double factorial(int n){ int i;double p=1, sum=0;for( i=1; i<=n; i++){ p=p*i;sum=sum+p;}return(sum);}2. 编写算法计算2i (i=0,1,2,…,n),并将计算结果存入数组a中,设计算机中允许的最大整数值为MAXINT,则当2k >MAXINT(0≤k≤n)时,应进行出错处理。
算法思想:先判断n的取值是否合法,若非法则直接退出程序,若n 合法则继续计算2i,在计算2i时,需要判断2i的值是否大于MAXINT/2,这个条件其实就是判断2i+1的值是否大于MAXINT#define arrsize 100#define MAXINT 65535void calculate(int a[ ], int n){ int i;if(n<=0 || n>arrsize){ printf("n error!\n");exit(-1);}a[0]=1;printf("a[0]=%d\n", a[0]);for(i=1; i<n; i++){ a[i]=a[i-1]*2;printf("a[%d]=%d\n", i, a[i]);if( a[i]>MAXINT/2 ){ printf(“i=%d, ERROR!\n”, i+1);break;}}}第2章线性结构一、选择题二、填空题1. 需向后移动__n-i+1____个元素。
数据结构自测题(带答案)2013-11-28
![数据结构自测题(带答案)2013-11-28](https://img.taocdn.com/s3/m/93c19af4fab069dc502201b8.png)
第一章概论一、填空题1. 数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和运算等的学科。
2. 数据结构被形式地定义为(D, R),其中D是数据元素的有限集合,R是D上的关系有限集合。
3. 数据结构包括数据的逻辑结构、数据的物理结构和数据的运算这三个方面的内容。
4. 数据结构按逻辑结构可分为两大类,它们分别是线性结构和非线性结构。
5. 线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。
6.在线性结构中,第一个结点无前驱结点,其余每个结点有且只有1个前驱结点;最后一个结点无后续结点,其余每个结点有且只有1个后续结点。
7. 在树形结构中,树根结点没有前驱结点,其余每个结点有且只有 1 个前驱结点;叶子结点没有后继结点,其余每个结点的后续结点数可以有多个后继。
8. 在图形结构中,每个结点的前驱结点数和后续结点数可以有多个。
9. 一个算法的效率可分为时间效率和空间效率。
10.数据之间的关系在计算机中有两种不同的表示方法,即顺序映像和非顺序映像。
11.算法的五个重要特性是输入性、输出性、有穷性、可行性和确定性。
12.数据项是数据的不可分割的最小单位。
13.算法分析的两个主要方面是时间复杂度和空间复杂度。
14.数据元素是数据的基本单位,15.对于给定的n个元素,可以构造的逻辑结构有线性,集合,树型,图型等4种。
16.数据结构包括数据的集合、数据的关系和数据的运算这三个方面的内容。
17.数据结构按逻辑结构可分为两大类,它们分别是线性结构和非线性结构。
二、单项选择题(B)1. 非线性结构是数据元素之间存在一种:A)一对多关系B)多对多关系C)多对一关系D)一对一关系( C )2. 数据结构中,与所使用的计算机无关的是数据的结构;A) 存储B) 物理C) 逻辑D) 物理和存储( C )3. 算法分析的目的是:A) 找出数据结构的合理性B) 研究算法中的输入和输出的关系C) 分析算法的效率以求改进D) 分析算法的易懂性和文档性( A )4. 算法分析的两个主要方面是:A) 空间复杂性和时间复杂性B) 正确性和简明性C) 可读性和文档性D) 数据复杂性和程序复杂性(C)5. 计算机算法指的是:A) 计算方法B) 排序方法C) 解决问题的有限运算序列D) 调度方法(B)6. 计算机算法必须具备输入、输出和等5个特性。
数据结构自测题及解答
![数据结构自测题及解答](https://img.taocdn.com/s3/m/1e8fb707f111f18583d05a63.png)
一、概念题(每空0.5分,共28分)1.树(及一切树形结构)是一种“________”结构。
在树上,________结点没有直接前趋。
对树上任一结点X来说,X是它的任一子树的根结点惟一的________。
2.由3个结点所构成的二叉树有种形态。
3.一棵深度为6的满二叉树有个分支结点和个叶子。
4.一棵具有257个结点的完全二叉树,它的深度为。
5.二叉树第i(i>=1)层上至多有______个结点;深度为k(k>=1)的二叉树至多有______个结点。
6.对任何二叉树,若度为2的节点数为n2,则叶子数n0=______。
7.满二叉树上各层的节点数已达到了二叉树可以容纳的______。
满二叉树也是______二叉树,但反之不然。
8.设一棵完全二叉树有700个结点,则共有个叶子结点。
9.设一棵完全二叉树具有1000个结点,则此完全二叉树有个叶子结点,有个度为2的结点,有个结点只有非空左子树,有个结点只有非空右子树。
10.一棵含有n个结点的k叉树,可能达到的最大深度为,最小深度为。
11.二叉树的基本组成部分是:根(N)、左子树(L)和右子树(R)。
因而二叉树的遍历次序有六种。
最常用的是三种:前序法(即按N L R次序),后序法(即按次序)和中序法(也称对称序法,即按L N R次序)。
这三种方法相互之间有关联。
若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是。
12.中序遍历的递归算法平均空间复杂度为。
13.二叉树通常有______存储结构和______存储结构两类存储结构。
14.如果将一棵有n个结点的完全二叉树按层编号,则对任一编号为i(1<=i<=n)的结点X有:(1)若i=1,则结点X是______;若i〉1,则X的双亲PARENT(X)的编号为______。
(2)若2i>n,则结点X无______且无______;否则,X的左孩子LCHILD(X)的编号为______。
数据结构(第二版) 模拟试题自测卷AB卷带答案3
![数据结构(第二版) 模拟试题自测卷AB卷带答案3](https://img.taocdn.com/s3/m/fcd4818cd5d8d15abe23482fb4daa58da0111cb3.png)
试卷B一、选择题(本题共20分,每题2分)1.在数据结构中,从逻辑上可以把数据结构分成( ) 。
A .动态结构和静态结构 B. 线性结构和非线性结构 C. 紧凑结构和非紧凑结构 D. 内部结构和外部结构 2. 下列程序段的时间复杂度是( )count=0;for(k=1;k<=n;k*=2) for(j=1;j<=n;j++) count++;A.O(nlog2n)B.O(n)C.O(log2n)D.O(n2) 3. 以下描述错误的是:( )A. 线性表是n 个数据元素的有限非空集合。
B. 栈和队列都是操作受限的线性表。
C. 串(或字符串)是由零个或多个字符组成的有限序列。
D. 非空栈中的栈顶指针top 始终指向栈顶元素的下一个位置。
4. 若采用少用一个队列空间的方法来区分队满队空两种状态,则判定一个顺序循环队列 Q (最大队列长度MAXSIZE )为满队列的条件是( )。
A. Q.front=Q.rearB. Q.front!=Q.rearC. Q.front=(Q.rear+1) % MAXSIZED. Q.front!=(Q.rear+1) % MAXSIZE 5. 按照二叉树的定义,具有 3 个结点的二叉树有( )种。
A. 3 B. 4 C. 5 D. 66. 设矩阵A (如下图所示)是一个对称矩阵,为了节省存储,将其下三角(包括对角线)部分按行序存放在一维数组 B[n(n+1)/2]中,对下三角部分中任一元素 ai,j(i ≥j),在一维数组 B 的下标位置k 的值是( )。
A. i(i-1)/2+j-1 B. i(i-1)/2+j C. i(i+1)/2+j-1 D. i(i+1)/2+j0,01,01,11,01,11,1...............n n n n a a a A a a a ----⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦7. 有一个有序表为{5, 18,23, 33, 42, 54,56,78},当折半查找56时,经过( )次比较后查找成功。
数据结构(第二版) 模拟试题自测卷AB卷带答案1
![数据结构(第二版) 模拟试题自测卷AB卷带答案1](https://img.taocdn.com/s3/m/97e1db4b68eae009581b6bd97f1922791688beab.png)
5.在一个单链表HL中,若要删除由指针q所指向结点的后继结点,则执行________。
A.p=q->next; p->next=q->next;free(p);
B.p=q->next; q->next=p; free(p);
C.p=q->next; q->next=p->next; free(p);
试卷一
一、选择题(本题共30分,每题2分)
1.计算机识别、存储和加工处理的对象被统称为________。
A.数据B.数据元素C.数据结构D.数据类型
2.已知一栈的进栈序列为:1234,则下列哪个序列为不可能的出栈序列________。
A.1234B.4321 C.2143D.4123
3.链表不具有的特点是________。
(1)直接插入排序
(2)基数排序
5.对于下面所示的连通图,写出由Prim算法生成的最小生成树。(5分)
6.将下面的树转化为一棵二叉树,并写出对二叉树进行层序遍历的序列。(7分)
四、算法题(本题共20分)
1.完成中序遍历二叉树。
Typedef struct node
{
Char data;
Struct node *lchild;
3.数据的逻辑结构包括集合、________、________和图状结构四种类型。
4.图的两种遍历方式为:广度优先遍历和_______________。
5.线性表的链式存储结构中的结点包含________域和________域。
6.向一棵二叉搜索树中插入一个元素时,若元素的值小于根结点的值,则应把它插入到根结点的_______上。
数据结构 学习自测题-2
![数据结构 学习自测题-2](https://img.taocdn.com/s3/m/468539d9b14e852458fb5761.png)
学习自测及答案1. 已知一维数组A采用顺序存储结构,每个元素占用4个存储单元,第9个元素的地址为144,则第一个元素的地址是()。
A 108B 180C 176D 1122.在长度为n的线性表中查找值为x的数据元素的时间复杂度为:()。
A O(0)B O(1)C O(n)D O(n2)3.在一个长度为n的顺序表的第i(1≤i≤n+1)个元素之前插入一个元素,需向后移动()个元素,删除第i(1≤i≤n)个元素时,需向前移动()个元素。
4.在单链表中,除了头结点以外,任一结点的存储位置由()指示。
5.当线性表采用顺序存储结构时,其主要特点是()。
6.在双链表中,每个结点设置了两个指针域,其中一个指向()结点,另一个指向()结点。
7.设A是一个线性表(a1, a2, …, an),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为多少?若元素插在ai与ai+1之间(1≤i≤n)的概率为,则平均每插入一个元素所要移动的元素个数又是多少?8.线性表存放在整型数组A[arrsize]的前elenum 个单元中,且递增有序。
编写算法,将元素x插入到线性表的适当位置上,以保持线性表的有序性,并且分析算法的时间复杂度。
9. 已知单链表中各结点的元素值为整型且递增有序,设计算法删除链表中所有大于mink且小于maxk的所有元素,并释放被删结点的存储空间。
10.设单循环链表L1,对其遍历的结果是:x1, x2, x3,…, xn-1, xn。
请将该循环链表拆成两个单循环链表L1和L2,使得L1中含有原L1表中序号为奇数的结点且遍历结果为:x1, x3,… ;L2中含有原L1表中序号为偶数的结点且遍历结果为:… , x4, x2。
数据结构试卷,自测题
![数据结构试卷,自测题](https://img.taocdn.com/s3/m/300a502d0722192e4536f62d.png)
一.判断题1.堆排序是一种选择排序,堆实质上是一颗完全二叉树结点的层次序列。
………()2.串是多个字符组成的有限序列,其一般形式为S=“a1a2…….an”。
……………()3.二维数组的两种存储方式列序和行序。
………………………………………()4.数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。
………()5.逻辑结构有线性结构,树形结构,图状结构三种。
…………………………()二.填空题1. 串的长度是指_____________________2. 串是一种特殊的线性表,其特殊性体现在3. 栈是___ __________的线性表,其运算遵循________ ________的原则。
4. 数组是一种______数据结构,数组中的元素属于同一数据类型,一维数组可以看成向量,多维数组是向量的_____。
5. 二叉树是有3个基本单元组成____、______、______6. 深度为k的二叉树最多有____个结点(k≥1)三.选择题1. 从逻辑上可以把数据结构分为()两大类。
A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构2. 连续储存设计时,储存单元的地址()A.一定连续B.一定不连续C.不一定连续D.部分连续,部分不连续3. 一个栈的输出序列为1,2,3,…….,n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()A.不确定 B. n-i+1 C. i D. n-i4. 执行完下列语句段后,i值为:()。
int f(int x){return ((x>0) ? x* f(x-1):2); }int i;I = f(f(1));A . 2B . 4C . 8D . 无限递归5. 下面关于串的叙述中,哪一个是不正确的?()A.串是字符的有限序列B.空串即是空白串C.模式匹配是串的一种重要运算D.串既可以采用顺序存储,也可以采用链式存储6. 若串S=”abbdded”,其子串的数目是多少()A.8B.28C.9D.297.假定有K个关键字互为同义词,若用线性探测法吧这K个关键字存入散列表中,至少要进行多少次探测()A.K-1次 B. K次C.K+1次D.K(K+1)/21.8.下面四种排序方法中,不稳定的排序法是()。
数据结构在线测试01-08章
![数据结构在线测试01-08章](https://img.taocdn.com/s3/m/cdf8ad4f68eae009581b6bd97f1922791688beac.png)
数据结构在线测试01-08章《数据结构》第01章在线测试A、顺序结构B、链式结构C、线性结构D、非线性结构E、动态结构F、静态结构3、下列说法中,不正确的是________。
A、数据是数据元素的基本单位B、数据元素是数据中不可分割的最小标识单位C、数据元素可由若干个数据项组成D、数据项可由若干个数据元素组成4、影响程序运行时间的因素包括______________。
A、书写程序的语言B、问题的规模C、编译器产生的机器代码的质量D、计算机的运行速度E、算法的策略F、输出数据量5、数据结构被形式化的定义为(D,S),其中D、S分别是________的有限集合。
A、数据元素B、数据操作C、数据存储D、数据关系第三题、判断题(每题1分,5道题共5分)1、数据的物理结构是指数据和关系在计算机内的实际存储形式。
正确错误2、算法原地工作的含义是指运行时不需要任何临时的辅助空间。
正确错误3、数据对象是一组数据元素的集合。
正确错误4、计算机算法必须具备的特性有:输入、输出、易读性、稳定性和安全性。
正确错误5、任何一个算法的设计取决于数据的逻辑结构,而算法的实现则依赖于所采用的存储结构。
正确错误测试结果如下:1.4[单选][对]树型结构和图结构都属于________。
1.5[单选][对]下列函数中,时间复杂度最小的是________。
2.1[多选][对]根据元素之间关系的不同特性,通常可有下列基本结构________。
2.2[多选][对]从逻辑上可以把数据结构分为________。
2.3[多选][对]下列说法中,不正确的是________。
2.4[多选][对]影响程序运行时间的因素包括______________。
2.5[多选][对]数据结构被形式化的定义为(D,S),其中D、S分别是________的有限集合。
3.1[判断][对]数据的物理结构是指数据和关系在计算机内的实际存储形式。
3.2[判断][对]算法原地工作的含义是指运行时不需要任何临时的辅助空间。
数据结构模拟试题(含答案)
![数据结构模拟试题(含答案)](https://img.taocdn.com/s3/m/227f0b496ad97f192279168884868762caaebb98.png)
数据结构模拟试题(含答案)一、单选题(共100题,每题1分,共100分)1、在一棵度为3的树中,度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为()个。
A、5B、6C、7D、4正确答案:B2、假设在一棵二叉树中,双分支结点数为15,单分支结点数为30个,则叶子结点数为()个。
A、15B、47C、16D、17正确答案:C3、设某哈夫曼树中有199个结点,则该哈夫曼树中有()个叶子结点。
A、100B、99C、102D、101正确答案:A4、一棵含18个结点的二叉树的高度至少为( )A、5B、4C、6D、3正确答案:A5、有关栈的描述,正确的是()A、栈是一种先进先出的特殊的线性表B、只能从栈顶执行插入、删除操作C、只能从栈顶执行插入、栈底执行删除D、栈顶和栈底均可执行插入、删除操作正确答案:B6、若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()A、中序遍历算法B、前序遍历算法C、后序遍历算法D、层次遍历算法正确答案:A7、若要在单链表中的结点*p之后插入一个结点*s,则应执行的语句是( ) typedef struct node { char data[8]; struct node *next; } LinkStrNode;A、s->next=p; p->next=s->next;B、s->next=p->next; p->next=s;C、p->next=s->next; s->next=p;D、p->next=s; s->next=p->next;正确答案:B8、在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为( )。
A、O(n)B、O(1)C、O(n2)D、O(n/2)正确答案:A9、执行一趟快速排序能够得到的序列是()。
A、[45,34,12,41] 55 [72,63,27]B、[63,12,34,45,27] 55 [41,72]C、[12,27,45,41] 55 [34,63,72]D、[41,12,34,45,27] 55 [72,63]正确答案:D10、带权有向图G用邻接矩阵A存储,则顶点i 的入度等于A中()。
数据结构单元测验2(包含答案与讲解).docx
![数据结构单元测验2(包含答案与讲解).docx](https://img.taocdn.com/s3/m/56ed9020aa00b52acec7ca0c.png)
《数据结构》小测验二(2008-2009学年第一学期》一.判断题(用x表示错,用丁表示对)(每题1分,共10分)1.线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。
(X)错,线性表是逻辑结构概念,可以顺序存储或链式存储,与元素数据类型无关。
2•在表结构中最常用的是线性表,栈和队列不太常用。
(X)错,不一定吧?调用子程序或函数常用,CPU中也用队列。
3.栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。
(V)4.对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。
(V)•正确,都是线性逻辑结构,栈和队列其实是特殊的线性表,对运算的定义略有不同而己。
5.栈和链表是两种不同的数据结构。
(X)错,栈是逻辑结构的概念,是特殊殊线性表,而链表是存储结构概念,二者不是同类项。
6.栈和队列是种非线性数据结构。
(X )错,他们都是线性逻辑结构,栈和队列其实是特殊的线性表,对运算的定义略有不同而已。
7.栈和队列的存储方式既可是顺序方式,也可是链接方式。
(J)8•两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。
(丿)9•队是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。
错,后半句不对。
(X)10.—个栈的输入序列是12345,则栈的输出序列不可能是12345。
( X )错,有可能。
二.选择题(每项选择1分,共26分)12345B C B A D6: A:a2, B:a4, C: al, D: a2, E :27.A=2, B=2, C= 1, D= 6, E=48.A=2, B=1,C= 2, D= 4, E=391011121314C D A D D D三、填空题(每空2分,共30分)1•向量、栈和队列都是线性结构,可以在向量的任何位置插入和删除元素;对于栈只能在栈顶插入和删除元素;对于队列只能在队尾插入和队首删除元素。
十套数据结构试题及答案
![十套数据结构试题及答案](https://img.taocdn.com/s3/m/02f5686e68eae009581b6bd97f1922791788be72.png)
数据构造试卷〔一〕一、单项选择题〔每题 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.通常从四个方面评价算法的质量:____时间正确性_____、____占用内存_易读性____、____复杂度__强壮性___和_____准确度_ 高效率___。
数据结构自测试题及答案
![数据结构自测试题及答案](https://img.taocdn.com/s3/m/04bbddcd59f5f61fb7360b4c2e3f5727a5e9240a.png)
数据结构自测题1一、单项选择题1.线性表若采用链表存储结构时,要求内存中可用存储单元的地址( D ).A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以2。
在单链表中,增加头结点的目的是为了( C )A.使单链表至少有一个结点B.表示表结点中首结点的位置C.方便运算的实现D.说明单链表是线性表的链式存储实现3。
设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈S的容量至少应是( B )A.2 B.3 C.4 D.54。
树结构中,前驱结点与后继结点之间存在( B )关系。
A.一对一B.一对多C.多对一D.多对多5.堆栈的特性描述是( B ).A.FIFO B.FILO C.FIFO和FILO D.FIFO或FILO6.队列的特性描述是( A )。
A.FIFO B.FILO C.FIFO和FILO D.FIFO或FILO 7。
下列数据结构中,是非线性结构的是( A )A.树B.堆栈C.队列D.循环队列8.设某个初始为空的容纳int型数据的堆栈进行了如下操作(每一步均未发生溢出):push (1)、push(3)、pop()、push(6)、push(1)、pop()、push(3)、push(8) 后,该堆栈中从栈顶到栈底的元素依次为( D )A.8 1 8 3 B.1 3 1 8 C.1 6 3 8 D.8 3 6 1二、判断题1.二叉树可以为空树。
(√)2.顺序表和链表都是线性表.(√)3。
线性表的长度是线性表占用的存储空间的大小.(√)4。
队列只能采用链式存储方式.(×)5。
由二叉树的先序序列和中序序列能唯一确定一棵二叉树。
(√)6。
存在有偶数个结点的满二叉树。
(×)三、填空题1。
数据结构是数据在计算机内的组成形式和相互关系。
《数据结构》单元测试1(含答案)
![《数据结构》单元测试1(含答案)](https://img.taocdn.com/s3/m/abfbd7d7d5bbfd0a79567354.png)
《数据结构》单元测试1一、选择题(每题2分,共40分)1.数据的最小单位是( A)。
(A) 数据项(B) 数据类型(C) 数据元素(D) 数据变量2. 栈和队列的共同特点是( A )。
(A)只允许在端点处插入和删除元素(B)都是先进后出(C)都是先进先出(D)没有共同点3. 用链接方式存储的队列,在进行插入运算时( D )。
(A)仅修改头指针(B)头、尾指针都要修改(C)仅修改尾指针 (D)头、尾指针可能都要修改4. 以下数据结构中哪一个是非线性结构?( D )(A)队列(B)栈(C)线性表(D)二叉树5.函数substr(“DATASTRUCTURE”,5,9)的返回值为( A )。
(A) “STRUCTURE”(B) “DATA”(C) “ASTRUCTUR”(D) “DATASTRUCTURE”6.设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序,则该操作的时间复杂度为( D)。
(A) O(log2n) (B) O(1) (C) O(n2) (D) O(n)7.设一棵m叉树中度数为0的结点数为N0,度数为1的结点数为Nl,……,度数为m的结点数为Nm,则N0=( B)。
(A) Nl+N2+……+Nm(B) 1+N2+2N3+3N4+……+(m-1)Nm(C) N2+2N3+3N4+……+(m-1)Nm (D) 2Nl+3N2+……+(m+1)Nm 8.设有序表中有1000个元素,则用二分查找查找元素X最多需要比较( B)次。
(A) 25 (B) 10 (C) 7 (D) 19. 二叉树的第k层的结点数最多为( D )。
(A)2k-1 (B) 2K+1 (C) 2K-1 (D)2k-110. 树最适合用来表示( C )。
(A)有序数据元素(B)无序数据元素(C)元素之间具有分支层次关系的数据 (D)元素之间无联系的数据11.n个权构成一棵Huffman树,其节点总数为( A )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单项选择题
第1题
由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )
A、48
B、51
C、63
D、72
第2题
按照二叉树的定义,具有3个结点的二叉树有()种。
A、3
B、4
C、5
D、6
第3题
有n个结点的二叉树,采用二叉链表存储,空指针的个数为()
A、n-1
B、n
C、n+1
D、n+2
第4题
在有n个结点的哈夫曼树中,总的结点个数是()。
A、n
B、2n-1
C、2n
D、2n+1
第5题
若一棵二叉树具有10个度为2的结点,则该二叉树的度为0的结点个数是( )
A、9
B、10
C、11
D、12
第6题
要连通具有n个顶点的有向图,至少需要()条边。
A、n-1
B、n
C、n+1
D、2n
判断题
第7题
后序序列和中序序列能唯一确定一棵二叉树。
正确
错误
第8题
常用的图的遍历算法包括深度优先搜索和广度优先搜索。
正确
错误
第9题
图G由两个集合V(G)和E(G)所组成,其中顶点集V(G)和边集E(G)都可以为空集。
正确
错误
第10题
图是非线性结构。
正确
错误
第11题
邻接表表示法和邻接矩阵表示法是图的常用的存储方法。
正确
错误
第12题
一个有向无环图的拓扑排序序列是唯一的。
()
正确
错误
单项选择题
第1题
下列排序方法中,稳定的是()
A、快速排序
B、堆排序
C、基数排序
D、希尔排序
第2题
排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为()。
A、希尔排序
B、起泡排序
C、直接插入排序
D、简单选择排序
第3题
在待排序的元素序列基本有序的前提下,效率最高的排序方法是()。
A、直接插入排序
B、简单选择排序
C、快速排序
D、2路归并排序
第4题
下列排序方法中,稳定的是()
A、快速排序
B、堆排序
C、希尔排序
D、基数排序
第5题
衡量查找算法效率的主要标准是()。
A、元素个数
B、所需的存储量
C、平均查找长度
D、算法难易程度
第6题
一个排序算法的时间复杂度与()有关。
A、排序算法的稳定性
B、所需比较关键字的次数
C、所采用的存储结构
D、所需辅助存储空间的大小
判断题
第7题
快速排序并非在任何情况下都比其他排序方法速度快。
正确
错误
第8题
二路归并排序的时间复杂度是O(nlogn),因此是不稳定的。
正确
错误
第9题
进行折半搜索的表必须是顺序存储的有序表。
正确
错误
第10题
哈希查找是不需要通过元素与待查关键字之间的比较的。
正确
错误
第11题
二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:若它的左子树非空,则根结点的值大于其左孩子的值;若它的右子树非空,则根结点的值小于其右孩子的值。
正确
错误
第12题
平衡二叉树的结点的平衡因子的取值为0,-1和1。
正确
错误
单项选择题
第1题
以下数据结构中哪一个是非线性结构?( )
A、队列
B、栈
C、线性表
D、二叉树
第2题
设带有头结点的单向循环链表的头指针变量为head,则其判空条件是()。
A、head==NULL
B、head->next==NULL
C、head->next==head
D、head!=NULL
第3题
栈和队列的共同特点是( )。
A、只允许在端点处插入和删除元素
B、都是先进后出
C、都是先进先出
D、没有共同点
第4题
用链接方式存储的队列,在进行插入运算时( )。
A、仅修改头指针
B、头、尾指针都要修改
C、仅修改尾指针
D、头、尾指针可能都要修改
第5题
设一单链表的头指针为head且该链表没有头结点,则其判空条件是()。
A、head==NULL
B、head->next=NULL
C、head->next==head
D、head!=NULL
第6题
设顺序线性表中有n个数据元素,则删除表中第i个元素需要移动()个元素。
A、n-i
B、n-i+l
C、n-i-1
D、i
判断题
第7题
线性表属于逻辑结构,顺序表和链表属于存储结构。
()
正确
错误
第8题
用顺序表来存储线性表时,需要另外开辟存储空间来保存数据元素之间的相互关系。
正确
错误
第9题
队列的操作特点是先进先出。
正确
错误
第10题
栈的操作特点是先进后出。
正确
错误
第11题
在单链表的插入和删除操作时,只需要修改相关结点的指针域,不需要移动数据。
()
正确
错误
第12题
顺序存储时,分配的地址空间是连续的。
正确
错误
单项选择题
第1题
与线性表的链式存储结构特点不符的是()
A、便于插入、删除运算
B、查找操作费时
C、需要连续的地址空间
D、空间动态分配
第2题
带头结点的单循环链表L为空的标志是()
A、L==NULL
B、L->next==NULL
C、L->next==L
D、 L!==NULL
第3题
假设队列的对头指示器为front,队尾指示器尾rear,队列的最大存储空间大小为max,则顺序循环队列为空的标志是()。
A、 rear==front
B、rear!=front
C、rear=(front+1)%max
D、front=(rear+1)%max
第4题
在数据结构中,从逻辑上可以把数据结构分成()
A、动态结构和静态结构
B、紧凑结构和非紧凑结构
C、线性结构和非线性结构
D、内部结构和外部结构
第5题
设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为()。
A、BADC
B、BCDA
C、CDAB
D、CBDA
第6题
设一棵完全二叉树中有65个结点,则该完全二叉树的深度为()。
A、8
B、7
C、6
D、5
判断题
第7题
数据结构按照元素之间的关系,可以分为线性结构和非线性结构。
正确
错误
第8题
任何一个算法的设计取决于数据的逻辑结构,而算法的实现依赖于采用的存储结构。
正确
错误
第9题
任何一个算法的设计取决于数据的逻辑结构,而算法的实现依赖于采用的存储结构。
正确
错误
第10题
栈和队列都可采用顺序存储结构和链式存储结构。
正确
错误
第11题
线性表、栈、队列都属于线性结构。
正确
错误
第12题
串的逻辑结构不是线性结构。
正确
错误。