设有6个结点的无向图,该图至少应有几条边
- 格式:docx
- 大小:10.86 KB
- 文档页数:1
图一. 选择题1. 设有6个结点的无向图,该图至少应有()条边才能确保是一个连通图。
A.5B.6C.7D.82. 设某完全无向图中有n个顶点,则该完全无向图中有()条边。
(A) n(n-1)/2 (B) n(n-1) (C) n2(D) n2-13. 设某有向图中有n个顶点,则该有向图对应的邻接表中有()个表头结点。
(A) n-1 (B) n (C) n+1 (D) 2n-14. 设无向图G中有n个顶点e条边,则其对应的邻接表中的表头结点和表结点的个数分别为()。
(A)n,e (B)e,n (C)2n,e (D)n,2e5. 设某强连通图中有n个顶点,则该强连通图中至少有()条边。
(A)n(n-1) (B)n+1 (C)n (D)n(n+1)6. 设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为()。
(A) n (B) e (C) 2n (D) 2e7. 设某有向图的邻接表中有n个表头结点和m个表结点,则该图中有()条有向边。
(A) n (B) n-1 (C) m (D) m-18. 设连通图G中的边集E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)},则从顶点a出发可以得到一种深度优先遍历的顶点序列为()。
(A) abedfc (B) acfebd (C) aebdfc (D) aedfcb9. 设某无向图中有n个顶点e条边,则建立该图邻接表的时间复杂度为()。
(A) O(n+e) (B) O(n2) (C) O(ne) (D) O(n3)10. 设某无向图有n个顶点,则该无向图的邻接表中有()个表头结点。
(A) 2n (B) n (C) n/2 (D) n(n-1)11. 设无向图G中有n个顶点,则该无向图的最小生成树上有()条边。
(A) n (B) n-1 (C) 2n (D) 2n-112. 设无向图G中的边的集合E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)},则从顶点a出发进行深度优先遍历可以得到的一种顶点序列为()。
一、单选题(每题 2 分,共20分)1. 1.对一个算法的评价,不包括如下(B )方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2. 2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行(A )。
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. 3.对线性表,在下列哪种情况下应当采用链表表示?( B )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4. 4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35. 5.AOV网是一种( D )。
A.有向图B.无向图C.无向无环图D.有向无环图6. 6.采用开放定址法处理散列表的冲突时,其平均查找长度(B )。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.7.若需要利用形参直接访问实参时,应将形参变量说明为(D )参数。
A.值B.函数C.指针D.引用8.8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的(A )。
A.行号B.列号C.元素值D.非零元素个数9.9.快速排序在最坏情况下的时间复杂度为(D )。
A.O(log2n) B.O(nlog2n) C.0(n) D.0(n2)10.10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、二、运算题(每题 6 分,共24分)1. 1.数据结构是指数据及其相互之间的______联系______。
自测题(6-10章)一、填空题1、二叉树第i(i>=1)层上至多有______个结点,深度为k(k>=1)的二叉树至多有______个结点。
2、对任何二叉树,若度为2的节点数为n2,则叶子数n0=______。
3、满二叉树上各层的节点数已达到了二叉树可以容纳的______,满二叉树也是______二叉树,但反之不然。
4、具有n个结点的完全二叉树的深度为______。
5、具有n个结点的二叉树中,一共有________个指针域,其中只有________个用来指向结点的左右孩子,其余的________个指针域为NULL。
6、二叉树有不同的链式存储结构,其中最常用的是________与________。
7、若二叉树的一个叶子是某子树的中根遍历序列中的第一个结点,则它必是该子树的后根遍历序列中的________个结点。
8、由________转换成二叉树时,其根结点的右子树总是空的。
9、哈夫曼树是带权路径长度________的树,通常权值较大的结点离根________。
10、有m个叶子结点的哈夫曼树,其结点总数为________。
11、已知一棵度为3的树有2个度为1的结点,3个度为2的结点,4个度为3的结点,则该树中有________个叶子结点。
12、具有10个顶点的无向图,边的总数最多为________。
13、N个顶点的连通图的生成树含有________条边。
14、无向图的邻接矩阵是一个________矩阵,有向图的邻接矩阵不一定是________矩阵。
15、一个具有n个顶点的完全无向图的边数为________,一个具有n个顶点的完全有向图的弧数为________。
16、遍历图的基本方法有________优先搜索和________优先搜索两种。
17、在有向图的邻接矩阵上,由第i行可得到第________个结点的________,而由第j列可得到第________个结点的________。
18、折半查找有序表(4,6,12,20,28,38,50,70,88,100),若查找表中元素20,它将依次与表中元素________比较大小。
数据结构习题集一、选择题1.数据结构中所定义的数据元素,是用于表示数据的。
(C)A.最小单位B.最大单位C.基本单位D.不可分割的单位2.从逻辑上可以把数据结构分为(C)A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构3.当待排序序列中记录数较少或基本有序时,最适合的排序方法为(A )A.直接插入排序法B.快速排序法C.堆排序法D.归并排序法4.关于串的的叙述,不正确的是( B)A.串是字符的有限序列B.空串是由空格构成的串C.替换是串的一种重要运算D.串既可以采用顺序存储,也可以采用链式存储5.带表头结点链队列的队头和队尾指针分别为front和rear,则判断队空的条件为(A )A.front==rear B.front!=NULL C.rear!=NULL D.front==NULL6.若构造一棵具有n个结点的二叉排序树,最坏的情况下其深度不会超过(B)A.n/2B.nC.(n+1)/2D.n+17.将两个各有n个元素的有序表合并成一个有序表,其最少的比较次数为(A)A.nB.2n-1C.2nD.n28.设顺序表有19个元素,第一个元素的地址为200,且每个元素占3个字节,则第14个元素的存储地址为(B )A.236B.239C.242D.2459.一个栈的入栈序列是a,b,c,d,e,则栈的输出序列不可能是(A )A.dceabB.decbaC.edcbaD.abcde10.元素大小为1个单元,容量为n个单元的非空顺序栈中,以地址高端为栈底,以top作为栈顶指针,则出栈处理后,top的值应修改为(D )A.top=topB.top=n-1C.top=top-1D.top=top+111.设有一个10阶的对称矩阵A,采用压缩存储方式以行序为主序存储,a00为第一个元素,其存储地址为0,每个元素占有1个存储地址空间,则a45的地址为(B)A.13B.35C.17D.3612.栈和队列( C )A.共同之处在于二者都是先进先出的特殊的线性表B.共同之处在于二者都是先进后出的特殊的线性表C.共同之处在于二者都只允许在顶端执行删除操作D.没有共同之处13.含有n个结点的二叉树用二叉链表表示时,空指针域个数为(C )A.n-1B.nC.n+1D.n+214.对一棵有100个结点的完全二叉树按层序编号,则编号为49的结点,它的左孩子的编号为(B)A.99B.98C.97D.5015.在一个图中,所有顶点的度数之和与图的边数的比是( C)A.1∶2B.1∶1C.2∶1D.4∶116.在一个具有n个顶点的无向图中,要连通全部顶点至少需要的边数为(A )A.n-1B.nC.n+1D.n/217.在一个具有n个顶点的无向图中,每个顶点度的最大值为( B )A.nB.n-1C.n+1D.2(n-1)18.若采用邻接表存储结构,则图的广度优先搜索类似于二叉树的(D)A.先序遍历B.中序遍历C.后序遍历D.层次遍历19.对线性表进行二分查找时,要求线性表必须( C)A.以顺序方式存储B.以链式方式存储C.以顺序方式存储,且结点按关键字有序排列D.以链接方式存储,且结点按关键字有序排列20.二分查找算法的时间复杂度是(D)A.O(n2)B.O(nlog2n)C.O(n)D.O(log2n)21.采用排序算法对n个元素进行排序,其排序趟数肯定为n-1趟的排序方法是(C)A.插入和快速B.冒泡和快速C.选择和插入D.选择和冒泡22. 闭散列表中由于散列到同一个地址而引起的“堆积”现象,是( B)A.由同义词之间发生冲突引起的B.由非同义词之间发生冲突引起的C.由同义词之间或非同义词之间发生冲突引起的D.由散列表“溢出”引起的23.在对查找表的查找过程中,若被查找的数据元素不存在,则把该数据元素插入到集合中。
浙江农林大学2013年硕士学位研究生入学考试试题考试科目: 农业知识综合三满分:150分考试时间:180分钟注意:所有试题答案写在答题纸上,答案写在试卷上无效。
农业机械化部分1、农业技术对耕地机械作业质量的要求是什么?(12分)2、简述播种机的构造及工作过程,并说明水平圆盘排种器的特点。
(18分)3、如图为插秧机横向送秧机构图,请写出图中8、14、15、19、20这5个部件的名称,并说明该送秧机构的工作原理。
(18分)4、螺纹联接的基本类型有哪些?并说明它们的适用场合。
(12分)农业信息化部分一、填空题(每空1分,共20分)1.中序遍历二叉排序树所得到的序列是___________序列(填有序或无序)。
2.快速排序的最坏时间复杂度为___________,平均时间复杂度为__________。
3.下面程序段的功能实现数据x进栈,要求在下划线处填上正确的语句。
typedef struct {int s[100]; int top;} sqstack;void push(sqstack &stack,int x){if (stack.top==m-1) printf(“overflow”);else {___________________________; _______________________________;}}4.设哈夫曼树中共有n个结点,则该哈夫曼树中有________个度数为1的结点。
5.最常用的两种多路复用技术为_________________和___________________,其中,前者是同一时间同时传送多路信号,而后者是将一条物理信道按时间分成若干个时间片轮流分配给多个信号使用。
6.在TCP/IP层次模型中与OSI参考模型第四层(运输层)相对应的主要协议有_____________和_____________,其中后者提供无连接的不可靠传输服务。
7.载波监听多路访问CSMA技术,需要一种退避算法来决定避让的时间,常用的退避算法有_______、_______和_______三种。
一、单选题(每题 2 分,共20分)1. 1.对一个算法的评价,不包括如下(B )方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2. 2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行(A )。
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. 3.对线性表,在下列哪种情况下应当采用链表表示?( B )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4. 4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35. 5.AOV网是一种(D )。
A.有向图B.无向图C.无向无环图D.有向无环图6. 6.采用开放定址法处理散列表的冲突时,其平均查找长度(B)。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.7.若需要利用形参直接访问实参时,应将形参变量说明为(D )参数。
A.值B.函数C.指针D.引用8.8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的( A )。
A.行号B.列号C.元素值D.非零元素个数9.9.快速排序在最坏情况下的时间复杂度为(D )。
A.O(log2n) B.O(nlog2n) C.0(n) D.0(n2)10.10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1. 1.数据结构是指数据及其相互之间的______________。
数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为A. 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的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
数据结构模拟题3(无答案)模拟试题3一.选择题1.当初始序列已按健值有序时,用直接插入算法进行排序,需要比较的次数为()A.n-1B.log2nC. 2log2nD.n22.以下时间复杂性不是O(n2)的排序方法是( )A.直接插入排序B.二路归并排序C.冒泡排序D.直接选择排序3..对采用二分查找法进行查找运算的查找表,要求按()方式进行存储。
A.顺序存储 B 链式存储C.顺序存储且结点按关键字有序D.链式存储且结点按关键字有序4.设有序表的关键字序列为{1,4,6,10,18,35,42,53,67,71,78,84,92,99},当用二分查找法查找健值为84的结点时,经()次比较后查找成功。
A.2B. 3C. 4D. 125.静态查找表与动态查找表两者的根本差别在于( )…………………………………………….A.逻辑结构不同B.存储实现不同C.施加的操作不同D.数据元素的类型不同6.用顺序查找法对具有n个结点的线性表查找的时间复杂性量级为A.O(n2)B. O(nlog2n)C. O(n)D.O(log2n)7.设有6个结点的无向图,该图至少应有()条边能确保是一个连通图。
A. 5B. 6C. 7 D 88.在无向图中,所有顶点的度数之和是所有边数的()倍。
A.0.5B.1C.2D.49.深度为6的二叉树最多有( )个结点.A.64B.63C.32D.3110.将含有83个结点的完全二叉树从根结点开始编号,根为1号,后面按从上到下、从左到右的顺序对结点编号,那么编号为41的双亲结点编号为 ( )A.42B.40C.21D.2011.已知某二叉树的后序遍历序列是dabec,中序遍历序列是deabc,它的前序遍历序列是()A.acbedB.deabcC.decabD.cedba12.设二叉树结点的先根序列、中根序列和后根序列中,所有叶子结点的先后顺序( )A.都不相同B.完全相同C.先序和中序相同,而与后序不同D.中序和后序相同,而与先序不同13.如果以链表作为栈的存储结构,做退栈操作时( )A.必须判别栈是否满B.必须判别栈是否空C.判别栈元素的类型D.对栈不做任何操作14.链栈与顺序栈相比,有一个比较明显的优点即()A.插入操作更方便B. 通常不会出现栈满的情况C.不会出现栈空的情况D. 删除操作更方便15.线性结构中的一个结点代表一个()A. 数据元素B. 数据项C. 数据D. 数据结构二.填空题1.若待排序的序列中存在多个记录具有相同的键值,经过排序,这些记录的相对次序仍然保持不变,则称这种排序方法是________的,否则称为________的。
数据结构自考题-9(总分:105.00,做题时间:90分钟)一、单项选择题(总题数:15,分数:30.00)1.为便于判别有向图中是否存在回路,可借助于 ( )A.广度优先搜索算 B.最小生成树算法C.最短路径算 D.拓扑排序算法(分数:2.00)A.B.C.D. √解析:2.在头指针为head的非空单循环链表中,指针p指向尾结点,下列关系成立的是 ( )A.p—>next==head B.p—>next—>Next==headC.p—>next==NULL D.p==head(分数:2.00)A. √B.C.D.解析:[解析] 在单链表中,将终端结点的指针域NULL改为指向表头结点或开始结点,就得到了单链形式的循环链表,并简单称为单循环链表。
故由题目中此单循环锚表的头指针为head,指针p指向尾结点,可得p→next=head。
3.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5 B.6C.7 D.8(分数:2.00)A. √B.C.D.解析:4.若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行比较的关键字依次为 ( )A.f,c,b B.f,d,b C.g,c,b D.g,d,b(分数:2.00)A. √B.C.解析:5.以下有关数据结构的叙述,正确的是 ( )A.线性表的线性存储结构优于链式存储结构B.二叉树的第i层上有2i-1个结点,深度为K的二叉树上有2k-1个结点C.二维数组是其数据元素为线性表的线性表D.栈的操作方式是先进先出(分数:2.00)A.B.C. √D.解析:6.设rear是指向非空带头结点的循环单链表的尾指针,则删除起始结点的操作可表示为( ) A.s=rear; B.rear=rear—>next;rear=rear—>next; free(rear);free(s);C.rear=rear—>next—>next; D.s=rear—>next—>next;free(rear); rear—>next—>next=s—>next;free(s);(分数:2.00)A.B.C.D. √解析:7.采用分治法进行排序的方法是( )A.快速排序 B.插入排序C.堆排序 D.希尔排序(分数:2.00)A. √B.C.D.解析:8.对长度为n的关键字序列进行堆排序的空间复杂度为 ( )A.O(log2n) B.O(1)C.O(n) D.O(n*log2n)(分数:2.00)A.B. √D.解析:[解析] 由于建初始堆所需的比较次数较多,所以堆排序不适宜于记录数较少的文件。
数据结构模考试题及答案一、单选题(共100题,每题1分,共100分)1、下面关于生成树的描述中,不正确的是( )A、生成树是树的一种表现形式B、生成树一定是连通的C、生成树一定不含有环D、若生成树顶点个数为n,则其边数一定为n-1正确答案:A2、用邻接表表示图进行广度优先遍历时,通常是采用()来实现算法的。
A、图B、栈C、队列D、树正确答案:C3、下列四种基本的逻辑结构中,结构结点间不存在任何逻辑联系的是()A、集合B、树形结构C、图形结构D、线性结构正确答案:A4、以下数据结构中,哪一个是线性结构()。
A、线索二叉树B、二叉树C、有向图D、串正确答案:D5、n个顶点的连通图至少中含有( )边。
A、n-1B、n+1C、nD、0正确答案:A6、G是一个非连通无向图,共有28条边,则该图至少有( )个顶点。
A、7B、8C、6D、9正确答案:D7、在一个链队列中,假定front和rear分别为队首和队尾指针,则删除一个结点的操作为()。
A、rear=front->nextB、front=rear->nextC、front=front->nextD、rear=rear->next正确答案:C8、一个栈的输入序列是 1 2 3 4 5,则下列序列中是栈的输出序列的是()。
A、1,4,2,5,3B、3,1,2,4,5C、2,3,4,1,5D、5,4,1,3,2正确答案:C9、假设以数组A[m]存放循环队列的元素。
已知队列的长度为length,指针rear指向队尾元素的下一个存储位置,则队头元素所在的存储位置为( )A、(rear-length+m+1)%mB、(rear-length+m)%mC、(rear-length+m-1)%mD、(rear-length)%m正确答案:B10、与数据元素本身的形式、内容、相对位置、个数无关的是数据的()。
A、存储结构B、操作C、逻辑结构D、算法正确答案:C11、深度为k的完全二叉树中最少有()个结点。
数据结构(C语言版)选择、填空题一概论选择1、( )是数据的基本单位。
A、数据结构B、数据元素C、数据项D、数据类型2、以下说法不正确的是( )。
A、数据结构就是数据之间的逻辑结构。
B、数据类型可看成是程序设计语言中已实现的数据结构。
C、数据项是组成数据元素的最小标识单位。
D、数据的抽象运算不依赖具体的存储结构。
3、学习数据结构主要目的是( )。
A、处理数值计算问题B、研究程序设计技巧C、选取合适数据结构,写出更有效的算法。
D、是计算机硬件课程的基础。
4、一般而言,最适合描述算法的语言是( )。
A、自然语言B、计算机程序语言C、介于自然语言和程序设计语言之间的伪语言D、数学公式5、通常所说的时间复杂度指( )。
A、语句的频度和B、算法的时间消耗C、渐近时间复杂度D、最坏时间复杂度6、A算法的时间复杂度为O(n^3),B算法的时间复杂度为O(2^n),则说明( )。
A、对于任何数据量,A算法的时间开销都比B算法小B、随着问题规模n的增大,A算法比B算法有效C、随着问题规模n的增大,B算法比A算法有效D、对于任何数据量,B算法的时间开销都比A算法小填空1、数据的( )结构依赖于计算机语言.2、数据的逻辑结构可分为线性结构和( )结构。
3、算法的时间复杂度与问题的规模有关外,还与输入实例的( )有关。
4、常用的四种存储方法是什么?5、常见的数据的逻辑结构有哪两种?6、一般,将算法求解问题的输入量称为( )。
二线性表选择题1、以下关于线性表的说法不正确的是( )。
A、线性表中的数据元素可以是数字、字符、记录等不同类型。
B、线性表中包含的数据元素个数不是任意的。
C、线性表中的每个结点都有且只有一个直接前趋和直接后继。
D、存在这样的线性表:表中各结点都没有直接前趋和直接后继。
2、线性表的顺序存储结构是一种( )的存储结构。
A、随机存取B、顺序存取C、索引存取D、散列存取3、在顺序表中,只要知道( ),就可在相同时间内求出任一结点的存储地址。
图习题一、1.下列说法错误的是( )。
A.一个图的邻接矩阵表示是唯一的B.一个图的邻接表表示是不唯一的C.一个图的生成树必为该图的极小连通子图D.一个无环有向图的拓扑排序序列必唯一2.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.83.DFS算法的时间复杂度为( )A. O(n)B. O(n3)C. O(n2)D. O(n+e)4.对于一个具有n个顶点的无向图,若采用邻接表表示,则存放表头结点的数组的大小为( )A.nB.n+1C.n-1D.n+边数5.在一个具有n个顶点的无向图中,要连通全部顶点至少需要( )条边。
A.nB.n+1C.n-1D.n/2 6.在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为( )A.e B.2e C.n2-e D.n2-2e二、1.图的主要存储结构有两种,分别为:_________和_________。
(1)邻接矩阵(2)邻接表。
2.在无向图的邻接矩阵A中,若A〔i,j〕等于1,则A〔j,i〕等于________。
13.已知一个图的广度优先生成树如右图所示,则与此相应的广度优先遍历序列为。
a b e f c d g三、1.请画出下面无向图的邻接矩阵和邻接表。
接矩阵为:0 1 1 1 01 0 1 0 11 1 0 1 11 0 1 0 10 1 1 1 0邻接表为:2.求出下图的一棵最小生成树。
3. 已知一个无向图的顶点集为{a, b, c, d, e} ,其邻接矩阵如下所示0100110010000110110110110⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥(1)画出该图的图形;(2)根据邻接矩阵从顶点a 出发进行深度优先遍历和广度优先遍历,写出相应的遍历序列。
.该图的图形为:深度优先遍历序列为:abdce广度优先遍历序列为:abedcab c de4.以邻接表为存储结构,写出连通图的深度优先搜索算法。
include <stdio.h>#include <alloc.h>#define M 10typedef struct node{ int adjvex;struct node *next;}JD;typedef struct tnode{ int vexdata;struct node *firstarc;}TD;void bfs(TD g[],int v,int visited[]){ int qu[M],f=0,r=0;JD *p;printf("%d ",v);visited[v]=1;qu[0]=v;while(f<=r){ v=qu[f++];p=g[v].firstarc;while(p!=NULL){ v=p->adjvex;if(visited[v]==0){ visited[v]=1;printf("%d ",v);qu[++r]=v;}p=p->next;}}void traver(TD g[],int n){ int i;static int visited[M];for(i=1;i<=n;i++)visited[i]=0;for(i=1;i<=n;i++)if(visited[i]==0)bfs(g,i,visited);}void traver(TD g[],int n){ int i;static int visited[M];for(i=1;i<=n;i++)visited[i]=0;for(i=1;i<=n;i++)if(visited[i]==0)dfs(g,i,visited);}void dfs(TD g[],int v,int visited[]) { JD *w;int i;printf("%d ",v);visited[v]=1;w=g[v].firstarc;while(w!=NULL){ i=w->adjvex;if(visited[i]==0)dfs(g,i,visited);w=w->next;}int loc_vertex(TD g[],int vex,int n){ int i,j;for(i=1;i<=n;i++)if(g[i].vexdata==vex)return(i);return(0);}int crt_linklist(TD g[]){ int n,e,i,j,k,vt,vh,flag;JD *p;printf("Input flag and the number of node,arc:");scanf("%d,%d,%d",&flag,&n,&e);for(i=1;i<=n;i++){ printf("g[%d].vexdata=",i);scanf("%d",&g[i].vexdata);g[i].firstarc=NULL;}for(k=1;k<=e;k++){ printf("Vt,Vh:");scanf("%d,%d",&vt,&vh);i=loc_vertex(g,vt,n);j=loc_vertex(g,vh,n);if(flag){ p=(JD *)malloc(sizeof(JD));p->adjvex=j;p->next=g[i].firstarc;g[i].firstarc=p;}else{ p=(JD *)malloc(sizeof(JD));p->adjvex=j;p->next=g[i].firstarc;g[i].firstarc=p;p=(JD *)malloc(sizeof(JD));p->adjvex=i;p->next=g[j].firstarc;g[j].firstarc=p;}}return(n);}void main(){ int n;TD g[M];n=crt_linklist(g);traver(g,n);}5.已知带权图的邻接矩阵表示和邻接表表示的形式说明分别如下:#define MaxNum50 //图的最大顶点数#define INFINITY INT_MAX//INT_MAX为最大整数,表示∞typedef struct{char vexs[MaxNum]; //字符类型的顶点表int edges[MaxNum][MaxMum]; //权值为整型的邻接矩阵int n,e; //图中当前的顶点数和边数}MGraph; //邻接矩阵结构描述typedef struct node{int adjvex; //邻接点域int weight; //边的权值struct node*next; //链指针域}EdgeNode; //边表结点结构描述typedef struct{char vertex; //顶点域EdgeNode*firstedge; //边表头指针}VertexNode; //顶点表结点结构描述typedef struct{VertexNode adjlist[MaxNum];//邻接表int n,e;//图中当前的顶点数和边数}ALGraph; //邻接表结构描述下列算法是根据一个带权图的邻接矩阵存储结构G1建立该图的邻接表存储结构G2,请填入合适的内容,使其成为一个完整的算法。
数据结构试卷(一) (1)数据结构试卷(二) (5)数据结构试卷(三) (9)数据结构试卷(四) (14)数据结构试卷(五) (19)数据结构试卷(六) (24)数据结构试卷(七) (28)数据结构试卷(八) (32)数据结构试卷(九) (36)数据结构试卷(十) .................................. 41 数据结构试卷(一)参考答案 (47)数据结构试卷(二)参考答案 (48)数据结构试卷(三)参考答案 (51)数据结构试卷(四)参考答案 (55)数据结构试卷(五)参考答案 (58)数据结构试卷(六)参考答案 (61)数据结构试卷(七)参考答案 (64)数据结构试卷(八)参考答案 (66)数据结构试卷(九)参考答案 (69)数据结构试卷(十)参考答案 (71)数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用方式存储的队列,在进行插入运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为A. 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的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
一、判断(共计40分,每题2.5分)1、层次遍历初始堆可以得到一个有序的序列。
()A. 正确B. 错误错误:【B】2、分块查找的平均查找长度不仅与索引表的长度有关,而且与块的长度有关。
()A. 正确B. 错误错误:【A】3、设一棵二叉树的先序序列和后序序列,则能够唯一确定出该二叉树的形状。
()A. 正确B. 错误错误:【B】4、快速排序是排序算法中平均性能最好的一种排序。
()A. 正确B. 错误错误:【A】5、设初始记录关键字基本有序,则快速排序算法的时间复杂度为O(nlog2n)。
()A. 正确B. 错误错误:【B】6、先序遍历一棵二叉排序树得到的结点序列不一定是有序的序列。
()A. 正确B. 错误错误:【A】7、冒泡排序在初始关键字序列为逆序的情况下执行的交换次数最多。
()A. 正确B. 错误错误:【A】8、线性表的顺序存储结构比链式存储结构更好。
()A. 正确B. 错误错误:【B】9、子串“ABC”在主串“AABCABCD”中的位置为2。
( )A. 正确错误:【A】10、调用一次深度优先遍历可以访问到图中的所有顶点。
()A. 正确B. 错误错误:【B】11、线性表中的所有元素都有一个前驱元素和后继元素。
()A. 正确B. 错误错误:【B】12、向二叉排序树中插入一个结点需要比较的次数可能大于该二叉树的高度。
()A. 正确B. 错误错误:【B】13、满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。
()A. 正确B. 错误错误:【A】14、非空的双向循环链表中任何结点的前驱指针均不为空。
()A. 正确B. 错误错误:【A】15、对连通图进行深度优先遍历可以访问到该图中的所有顶点。
()A. 正确B. 错误错误:【A】16、不论线性表采用顺序存储结构还是链式存储结构,删除值为X的结点的时间复杂度均为O(n)。
()A. 正确B. 错误错误:【A】二、单选(共计60分,每题2.5分)17、设一棵二叉树的深度为k,则该二叉树中最多有()个结点。
装订第 1 页 共 11 页一、选择题1.设某数据结构的二元组形式表示为A=(D ,R),D={01,02,03,04,05,06,07,08,09},R={r},r={<01,02>,<01,03>,<01,04>,<02,05>,<02,06>,<03,07>,<03,08>,<03,09>},则数据结构A 是( B )。
(A )线性结构 (B )树型结构 (C )物理结构 (D )图型结构 2.树最适合用来表示( C )。
(A )有序数据元素 (B )无序数据元素(C )元素之间具有分支层次关系的数据 (D )元素之间无联系的数据3. 设一组初始记录关键字序列为(50,40,95,20,15,70,60,45),则以增量d=4的一趟希尔排序结束后前4条记录关键字为( B )。
(A) 40,50,20,95 (B) 15,40,60,20 (C) 15,20,40,45 (D) 45,40,15,204. 算法的计算量的大小称为计算的( B )。
(A) 效率 (B) 复杂性 C. 现实性 D. 难度5. 设一维数组中有n 个数组元素,则读取第i 个数组元素的平均时间复杂度为( C )。
(A) O(n) (B) O(nlog 2n) (C) O(1) (D) O(n) 6.下面算法的时间复杂度为( B )。
int f(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!) 7. 以下哪一个不是队列的基本运算?( A )(A )在队列第i 个元素之后插入一个元素 (B )从队头删除一个元素 (C )判断一个队列是否为空 (D )读取队头元素的值 8.不含任何结点的空树。
( C )(A)是一棵树; (B)是一棵二叉树;(C)是一棵树也是一棵二叉树 (D)既不是树也不是二叉树9. 若某线性表的常用操作是取第i 个元素及其前趋元素,则采用( A )存储方式最节省时间。
数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈与队列得共同特点就是().A、只允许在端点处插入与删除元素B、都就是先进后出C、都就是先进先出D、没有共同点2.用链接方式存储得队列,在进行插入运算时( )、A、仅修改头指针B、头、尾指针都要修改C、仅修改尾指针 D、头、尾指针可能都要修改3.以下数据结构中哪一个就是非线性结构?( )A、队列B、栈C、线性表D、二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678C。
692 D.6965.树最适合用来表示()。
A、有序数据元素B、无序数据元素C、元素之间具有分支层次关系得数据D、元素之间无联系得数据6.二叉树得第k层得结点数最多为( )、A.2k-1 B、2K+1 C、2K—1 D、2k-17.若有18个元素得有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]得比较序列得下标依次为( )A、1,2,3 ﻩﻩB、9,5,2,3C、9,5,3ﻩﻩﻩD、9,4,2,38.对n个记录得文件进行快速排序,所需要得辅助存储空间大致为A、 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得元素有( )个,A。
1 B。
2 C。
3 D。
410.设有6个结点得无向图,该图至少应有( )条边才能确保就是一个连通图。
A、5B、6C、7D、8二、填空题(每空1分,共26分)1.通常从四个方面评价算法得质量:_________、_________、_________与_________。
2.一个算法得时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。