2006年10月全国自考数据结构试题及答案

合集下载

自考数据结构课后习题答案

自考数据结构课后习题答案

自考数据结构课后习题答案本章的重点是了解数据结构的逻辑结构、存储结构、数据的运算三方面的概念及相互关系,难点是算法复杂度的分析方法。

需要达到<识记>层次的基本概念和术语有:数据、数据元素、数据项、数据结构。

特别是数据结构的逻辑结构、存储结构及数据运算的含义及其相互关系。

数据结构的两大类逻辑结构和四种常用的存储表示方法。

需要达到<领会>层次的内容有算法、算法的时间复杂度和空间复杂度、最坏的和平均时间复杂度等概念,算法描述和算法分析的方法、对一般的算法要能分析出时间复杂度。

对于基本概念,仔细看书就能够理解,这里简单提一下:数据就是指能够被计算机识别、存储和加工处理的信息的载体。

数据元素是数据的基本单位,有时一个数据元素可以由若干个数据项组成。

数据项是具有独立含义的最小标识单位。

如整数这个集合中,10这个数就可称是一个数据元素.又比如在一个数据库(关系式数据库)中,一个记录可称为一个数据元素,而这个元素中的某一字段就是一个数据项。

数据结构的定义虽然没有标准,但是它包括以下三方面内容:逻辑结构、存储结构、和对数据的操作。

这一段比较重要,我用自己的语言来说明一下,大家看看是不是这样。

比如一个表(数据库),我们就称它为一个数据结构,它由很多记录(数据元素)组成,每个元素又包括很多字段(数据项)组成。

那么这张表的逻辑结构是怎么样的呢? 我们分析数据结构都是从结点(其实也就是元素、记录、顶点,虽然在各种情况下所用名字不同,但说的是同一个东东)之间的关系来分析的,对于这个表中的任一个记录(结点),它只有一个直接前趋,只有一个直接后继(前趋后继就是前相邻后相邻的意思),整个表只有一个开始结点和一个终端结点,那我们知道了这些关系就能明白这个表的逻辑结构了。

而存储结构则是指用计算机语言如何表示结点之间的这种关系。

如上面的表,在计算机语言中描述为连续存放在一片内存单元中,还是随机的存放在内存中再用指针把它们链接在一起,这两种表示法就成为两种不同的存储结构。

自考数据库系统原理真题及答案

自考数据库系统原理真题及答案

2006年10月份自考数据库系统原理真题一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.最终用户使用的数据视图称为()A.内模式B.外模式C.概念模式D.存储模式答案:B2.在数据库系统中,把可以相互区别的客观事物称为()A.文件B.字段C.实体D.关键码答案:C3.数据库的三级模式结构之间存在着两级映像,使得数据库系统具有较高的()A.事务并发性B.数据可靠性C.数据独立性D.数据重用性答案:C4.设关系R和S的元数分别为r和s,则R×S的元数为()A.r+sB.r-sC.r×sD.MAX(r,s)答案:A5.设有关系R(A,B,C)和S(D,A),如下图所示,R的主键为A,S的主键为D且外键为A.则关系S中违反参照完整性约束的元组是()A.(1,2)B.(2,NULL)C.(3,3)D.(4,4)答案:D6.有关系R(sno,sname,age),下列关于空值的查询语句中,不能产生正确结果的是()A.SELECT sname FROM R WHERE age=NULLB.SELECT sname FROM R WHERE age IS NULLC.SELECT sname FROM R WHERE NOT(age IS NULL)D.SELECT sname FROM R WHERE age IS NOT NULL答案:A7.在数据库系统中,系统故障造成()A.硬盘数据丢失B.软盘数据丢失C.内存数据丢失D.磁带数据丢失答案:C8.在关系模式R(A,B,C)中,F={(A,B)→C,B→C},则R最高达到()A.1NFB.2NFC.3NFD.BCNF答案:A9.数据库设计中,用于反映企业信息需求的是()A.ER模型B.关系模型C.层次模型D.网状模型答案:A10.在一个ER模型中,有3个不同的实体集和3个不同的二元联系,其中有1个一对一联系、1个一对多联系和1个多对多联系,根据ER模型转换成关系模型的规则,转换成关系的数目是()A. 3B. 4C. 5D. 6答案:B11.如果事务T获得了数据对象Q上的S锁,则其他事务在数据对象Q上()A.可加X锁B.可加S锁C.可加任何锁D.不能加任何锁答案:B12.在事务依赖图中,若两个事务的依赖关系构成循环,则()A.事务执行成功B.系统出现活锁C.事务执行失败D.系统出现死锁答案:D13.在数据库系统中,日志文件用于()A.保障事务的并发性B.保障数据的安全性C.检测系统的死锁D.数据库故障的恢复答案:D14.在一个DDBS中,各场地均采用关系数据模型,但某些场地的DBMS是Oracle,而另一些是SQL Server,则称之为()A.异构型B.异质型C.同构异质型D.异构同质型答案:C15.在面向对象数据库系统中,不同类的对象共享公共部分的结构和特性称为()A.共享性B.继承性C.通用性D.一致性答案:B二、填空题(本大题共10小题,每小题1分,共10分)请在每小题的空格中填上正确答案。

全国2006年10月高等教育自学考试数据库及其应用试题历年试卷

全国2006年10月高等教育自学考试数据库及其应用试题历年试卷

做试题,没答案?上自考365,网校名师为你详细解答!全国2006年10月高等教育自学考试数据库及其应用试题课程代码:02120一、单项选择题(本大题共20小题,每小题2分,共40分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.以下不属于数据库技术特点的是()A.数据结构化B.数据共享C.数据冗余小D.以记录为单位对数据进行操作2.设有关系R(A,B,C)和S(B,C,D),则R S的属性个数是()A.3个B.4个C.6个D.7个3.如果要将一个关系模式规范化为2NF,必须()A.消除非主属性对键的部分函数依赖B.消除主属性对键的部分函数依赖C.消除非主属性对键的传递函数依赖D.消除主属性对键的传递函数依赖4.Access没有提供的向导程序是()A.数据库向导B.工程向导C.表向导D.窗体向导5.空数据库是指()A.数据库中“表”没有数据B.数据库中无任何对象C.数据库中只有“表”对象,不包括其它对象D.数据库中不包括“表”对象6.在确定表中字段时,不符合设计规则的描述是()A.表中每个字段与表的主题相关B.全部字段包含主题所需全部信息C.包含能通过计算得到的数据D.不包含能通过计算得到的数据7.若表中有一个名为照片的字段,其中拟存放位图(bmp文件),则该字段的类型是()A.备注型B.超链接型C.OLE对象型D.二进制型8.为一个表创建索引是为了()A.建立表的主键B.提高对表中数据进行查找的速度C.对表中记录进行物理排序D.对表中记录进行编号9.某记录的一个文本型字段内存放的数据为“710072SXcn”,当该字段的格式属性设置为“>@@@@@@-@@-@@”时,显示的结果是()A.>@@@@@@-@@-@@ B.710072SXcnC.710072-S X-CN D.710072-SX-cn10.利用“设计”视图建立查询准则,若查询学习成绩在80分到90分(包含80分,不包含90分)之间的学生情况,正确的查询准则是()A.>79 OR <90 B.Between 80 with 90C.>=80 AND <90 D.IN(80, 90)11.根据指定的查询条件,从一个或多个表中获取数据并显示结果的查询称为()A.交叉表查询B.索引查询C.选择查询D.操作查询12.在Access查询对象中设置查询准则时,下列关于查询条件的说法中错误的是()A.同行之间为逻辑“与”关系,不同行之间为逻辑“或”关系B.日期/时间类型数据需在两端加#C.文本类型数据需在两端加上双引号(″″)D.数字类型数据需在两端加上双引号(″″)13.在“学生”窗体中,通过“查找与替换”对话框查找姓“王”的学生时,应当在“查找内容”中输入()A.[王]?B.[王?]C.[王]* D.[王*]14.以下控件中不能包含在选项组控件中的是()A.切换按钮B.命令按钮C.选项按钮D.复选按钮15.Access报表中对记录进行分组,下列描述错误的是()A.将具有共同特征的记录集中在一起打印B.能对分组数据进行统计汇总C.有助于提高报表的可读性D.可按任意字段进行分组16.Access报表的结构由“报表页面”,“页面页眉”,“主体”,“页面页脚”和“报表页脚”五部分构成,下面描述错误的是()A.每一部分称为报表的一个“节”B.全部报表必须包含“主体”节C.“主体”节以外的其它“节”可按需要进行选择D.每一报表必须包含五个“节”17.在分组报表中用于分组的字段个数最多可以是()A.8个B.9个C.10个 D.11个18.可通过设置数据访问页的链接属性,使数据访问页关联数据源。

数据结构自考试题和答案

数据结构自考试题和答案

数据结构自考试题和答案一、单项选择题(每题2分,共20分)1. 在数据结构中,算法的时间复杂度是指()。

A. 执行算法所需要的时间B. 执行算法所需要的指令条数C. 算法执行过程中所需要的基本操作次数D. 算法执行过程中所需要的存储空间答案:C2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。

A. 存储密度高B. 存储密度低C. 插入和删除操作快D. 存储空间可以动态分配答案:A3. 在二叉树的遍历过程中,若某结点的左孩子为空,则其右孩子()。

A. 一定为空B. 一定为非空C. 可能为空,也可能为非空D. 以上说法都不对答案:C4. 哈希表的构造方式是()。

A. 数组B. 树C. 链表D. 数组和链表5. 一个长度为n的线性表,若采用顺序存储结构,则其在表中第i个位置的元素(1≤i≤n)的存储地址为()。

A. 100+iB. 100+(i-1)×2C. 100+(i-1)×3D. 100+(i-1)×4答案:B6. 在二叉排序树中,若某结点的左子树非空,则其左子树中任一结点的值()。

A. 都小于该结点的值B. 都大于该结点的值C. 都等于该结点的值D. 都大于等于该结点的值7. 对于图的遍历,以下说法正确的是()。

A. 深度优先搜索只能使用递归实现B. 广度优先搜索只能使用队列实现C. 深度优先搜索和广度优先搜索都可以使用递归和非递归方式实现D. 深度优先搜索和广度优先搜索都必须使用栈实现答案:C8. 在一个具有n个顶点的无向图中,若该图是连通图,则其边数最少为()。

A. n-1B. nC. n+1D. 2n9. 一个栈的入栈序列为1, 2, 3, 4, 5,则可能的出栈序列为()。

A. 1, 3, 5, 2, 4B. 4, 5, 3, 2, 1C. 5, 4, 3, 2, 1D. 2, 4, 1, 3, 5答案:C10. 在一个有向图中,若存在从顶点v到顶点w的有向路径,则称v可达w,若存在从顶点v到图中每一个顶点的路径,则称v是()。

自考-数据结构历年考题综合(答案)

自考-数据结构历年考题综合(答案)

2006.101.若结点的存储地址与其关键字之间存在某种映射关系,则称这种存储结构为( )A.顺序存储结构B.链式存储结构C.索引存储结构D.散列存储结构2.在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为( )A.n-i+1B.n-iC.iD.i-13.对于只在表的首、尾两端进行插入操作的线性表,宜采用的存储结构为( )A.顺序表B.用头指针表示的单循环链表C.用尾指针表示的单循环链表D.单链表4.若进栈序列为a,b,c,则通过入出栈操作可能得到的a,b,c的不同排列个数为( )A.4B.5C.6D.75.一棵有16结点的完全二叉树,对它按层编号,则对编号为7的结点X,它的双亲结点及右孩子结点的编号分别为()A.2,14 B.2,15C.3,14 D.3,156.设有一5阶上三角矩阵A[1..5,1..5],现将其上三角中的元素按列优先顺序存放在一堆数组B[1..15]中。

已知B[1]的地址为100,每个元素占用2个存储单元,则A[3,4]的地址为()A.116 B.118C.120 D.1227.一个带权的无向连通图的最小生成树()A.有一棵或多棵 B.只有一棵C.一定有多棵 D.可能不存在8.下列有关图遍历的说法中不正确的是()A.连通图的深度优先搜索是一个递归过程B.图的广度优先搜索中邻接点的寻找具有“先进先出”的特征C.非连通图不能用深度优先搜索法D.图的遍历要求每一顶点仅被访问一次9.某算法的空间花费s(n)=2n+n100+nlog2n+n101,则其空间复杂度为()。

A. O(nlog2n) B. O(n100) C. O(n101) D. O(2n)10. 单链表中的存储密度一定()。

A.小于0.5 B. 等于1 C. 大于0.1 D. 小于1 11.在顺序栈中删除一个元素,至少要移动()元素。

A. 0 B. 1 C. n/2 D. n 12.空串是()。

(完整word版)数据结构试题及答案(10套最新)

(完整word版)数据结构试题及答案(10套最新)

一、单选题(每题 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 2 D。

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。

数据结构是指数据及其相互之间的______________。

当结点之间存在M对N(M:N)的联系时,称这种结构为_____________________。

自考数据结构试题及答案

自考数据结构试题及答案一、选择题1. 数据结构是指()A. 数据的存储和管理方式B. 用于组织和管理数据的方法C. 数据的存储结构D. 数据的逻辑结构和物理结构答案:B2. 下列哪种数据结构不是线性结构()A. 栈B. 队列C. 链表D. 树答案:D3. 在一棵完全二叉树中,具有n个节点的左子树中最大可能的节点个数是()A. nB. n+1C. n/2D. 2n答案:C4. 设计一个函数,用于判断一个输入字符串是否为回文串,即正序和逆序都相同的字符串。

以下哪种数据结构最适合解决这个问题()A. 队列B. 栈C. 链表D. 二叉树答案:B5. 在数据结构中,栈是一种()结构。

A. 先进后出B. 先出后进C. 先进先出D. 后进先出答案:A二、填空题1. 在图的深度优先遍历算法中,使用栈来存储待访问节点的顺序。

2. 哈希表是一种利用哈希函数将键映射到索引的数据结构,其查找的平均时间复杂度为O(1)。

3. 线性表中,表头节点的指针域指向(空),表尾节点的指针域指向(空)。

4. 链表的插入和删除操作的时间复杂度都是O(1)。

5. 图是一种由顶点和边组成的数据结构,可以表示实际生活中的各种问题。

三、简答题1. 请简要说明线性表和链表的异同。

线性表和链表都是线性结构,可用于存储有序的数据。

线性表是用数组实现的,需要连续的内存空间来存储数据,查询元素时具有较好的性能。

而链表则是由节点及节点间的指针组成,可以灵活地分配内存空间,插入和删除元素时更为高效。

两者的不同在于数据的存储方式。

线性表具有固定长度,需要提前分配内存空间,而链表可以根据需要动态分配节点,不存在固定长度的限制。

2. 树和图有何区别?树和图都是非线性结构,可以用于表示有关联关系的数据。

它们的区别在于:树是一种特殊的图,具有层级结构且不存在环路,每个节点最多只有一个父节点;而图则没有层级关系和环路的限制,节点之间可以有任意多的关联。

树一般用来表示具有层次关系的数据,如文件系统、家谱等,而图则适用于表示复杂的网络关系,如社交网络、路由图等。

2001年到2006年自考数据结构试题和答案2

全国2004年10月卷答案一、单项选择题DABAC CCBDA ABABD// 5.可以简单的计算,空域为3->7,总共5个,对长则为21 - 5 = 167.c//BDBABDABDABBDA123失败,比较3次BDBABDABDABBDA1失败,比较1次BDBABDABDABBDA12失败,比较2次BDBABDABDABBDA1失败,比较1次BDBABDABDABBDA123成功,比较3次共计10次10.dA/B/ | \C D F|E二、填空题16.(一组)运算17. 直接前驱18. SXSSXXSSXSSXXX19. 模式匹配20. 5n - 6N+2N-2+2N-4=5N-6// n阶5对角阵// 1 1 1 0 0 ............// 1 1 1 1 0 ............// 1 1 1 1 1 0 ..........// 0 1 1 1 1 1 0.........// 0 0 1 1 1 1 1 0 ......// ....0 1 1 1 1 1 0 ....// ......................// ......................21. 50// 63 < 100 < 127, 最下一层叶子数:100 - 63 = 37// 倒数第2层叶子数:32 - [ 37 / 2 ] = 13 []向上取整22. 径?23. 待排关键字(记录)?24. 有序的?25. ?// 一些概念题,因为没书,很久没接触了,可能不准确。

三、解答题略28划分后左边:(55) (28) (73) (91) (37) 右边:(64),(19),(82),(46)第一次Merge之后:(28,55)(73) (91) (37) 右边:(64),(19),(82),(46)第二次Merge之后:(28,55)(73,91) (37) 右边:(64),(19),(82),(46)第三次Merge之后:(28,55,73,91)(37) 右边:(64),(19),(82),(46)第四次Merge之后:(28,37,55,73,91) 右边:(64),(19),(82),(46)第五次Merge之后:(28,37,55,73,91) 右边:(19,64),(82), (46)所以.....28,37,55,73,91,19,64,82,46四、算法阅读题30.1) p = pre->next; 或 p = L->next; // p指向第一个结点2) p->next = Lc->next; // 数据大于c的p结点插入Lc链表表头3) p = pre->next; 或 p = p->next; // 下一个结点31.此题有误,... if ((i=!t)!=0) ... 应该是 ... if( ( i = !i ) != 0 ) ...1) 1,3,5,7,6,4,22) 堆栈S中的元素依次出栈,奇数次序的入栈T,偶数次序的入队Q32.图G的邻接矩阵不对称,因此,是有向图1) 52) 计算有向图G中的端点i(第i+1个端点)的度,包括出度和入度3) O(n)33. 此题明显有错误if( low > high )应为if( low < high )因为if(){...}里有while( low < high )1) -8, -3, -2, -1, 4, 2, 5, 7:-8 -3 2 -1 -2 4 5 72) 将数组R中的前n个数调整为所有负数在前,所有整数在后五、算法设计题34. 看原型,应该是要使用递归了,题目很傻地把解法都告诉我们了。

数据结构自考试题及答案

数据结构自考试题及答案一、单项选择题(每题1分,共10分)1. 在数据结构中,从逻辑上可以把数据结构分为()。

A. 动态结构和静态结构B. 线性结构和非线性结构C. 顺序结构和链式结构D. 内部结构和外部结构答案:B2. 线性表的顺序存储结构和链式存储结构相比,它的优点是()。

A. 存储密度大B. 存储密度小C. 插入和删除操作快D. 可以进行随机访问答案:D3. 下列关于栈的描述中,错误的是()。

A. 栈是先进后出(LIFO)的线性表B. 栈允许在一端进行插入和删除操作C. 栈是具有记忆功能的线性表D. 栈的插入和删除操作必须在栈顶进行答案:C4. 在二叉树的遍历过程中,若某结点的左子树为空,则该结点的左孩子直接与()相连。

A. 右孩子B. 右兄弟C. 父节点D. 子节点答案:C5. 哈希表的构造方式是()。

A. 数组B. 树C. 链表D. 图答案:A6. 在图的遍历过程中,深度优先搜索(DFS)和广度优先搜索(BFS)的主要区别在于()。

A. 遍历顺序B. 是否使用栈C. 是否使用队列D. 是否使用递归答案:C7. 快速排序算法的时间复杂度在最坏情况下是()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C8. 以下排序算法中,时间复杂度为O(nlogn)的是()。

A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C9. 在数据库管理系统中,索引的作用是()。

A. 存储数据B. 提高查询效率C. 维护数据完整性D. 实现数据加密答案:B10. 以下不属于查找算法的是()。

A. 顺序查找B. 二分查找C. 哈希查找D. 归并排序答案:D二、填空题(每题2分,共20分)11. 在数据结构中,线性表的顺序存储结构通常使用___________来实现。

答案:数组12. 一个长度为n的顺序表,若在第i个位置插入一个元素(1≤i≤n+1),需要向后移动___________个元素。

(完整版)数据结构试题及答案

(完整版)数据结构试题及答案《数据结构》⾃考复习思考试题○10⼀、单项选择题(本⼤题共15⼩题,每⼩题2分,共30分)在每⼩题列出的四个备选项中只有⼀个是符合题⽬要求的,请将其代码填写在题后的括号内。

错选、多选或未选均⽆分。

1. 若将数据结构形式定义为⼆元组(K,R),其中K是数据元素的有限集合,则R是K上( ) A. 操作的有限集合 B. 映象的有限集合C. 类型的有限集合D. 关系的有限集合2. 在长度为n的顺序表中删除第i个元素(1≤i≤n)时,元素移动的次数为( )A. n-i+1B. iC. i+1D. n-i3. 若不带头结点的单链表的头指针为head,则该链表为空的判定条件是( )A. head==NULLB. head->next==NULLC. head!=NULLD. head->next==head4. 引起循环队列队头位置发⽣变化的操作是( )A. 出队B. ⼊队C. 取队头元素D. 取队尾元素5. 若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进⾏,则不.可能出现的出栈序列是( )A. 2,4,3,1,5,6B. 3,2,4,1,6,5C. 4,3,2,1,5,6D. 2,3,5,1,6,46. 字符串通常采⽤的两种存储⽅式是( )A. 散列存储和索引存储B. 索引存储和链式存储C. 顺序存储和链式存储D. 散列存储和顺序存储7. 设主串长为n,模式串长为m(m≤n),则在匹配失败情况下,朴素匹配算法进⾏的⽆效位移次数为( )A. mB. n-mC. n-m+1D. n8. ⼆维数组A[12][18]采⽤列优先的存储⽅法,若每个元素各占3个存储单元,且第1个元素的地址为150,则元素A[9][7]的地址为( )A. 429B. 432.C. 435D. 4389. 对⼴义表L=((a,b),(c,d),(e,f))执⾏操作tail(tail(L))的结果是( )A. (e,f)B. ((e,f))C. (f)D. ( )10. 下列图⽰的顺序存储结构表⽰的⼆叉树是( )11. n个顶点的强连通图中⾄少含有( )A. n-1条有向边B. n条有向边C. n(n-1)/2条有向边D. n(n-1)条有向边12. 对关键字序列(56,23,78,92,88,67,19,34)进⾏增量为3的⼀趟希尔排序的结果为( )A. (19,23,56,34,78,67,88,92)B. (23,56,78,66,88,92,19,34)C. (19,23,34,56,67,78,88,92)D. (19,23,67,56,34,78,92,88)13. 若在9阶B-树中插⼊关键字引起结点分裂,则该结点在插⼊前含有的关键字个数为( ) A. 4 B. 5C. 8D. 914. 由同⼀关键字集合构造的各棵⼆叉排序树( )A. 其形态不⼀定相同,但平均查找长度相同B. 其形态不⼀定相同,平均查找长度也不⼀定相同C. 其形态均相同,但平均查找长度不⼀定相同.D. 其形态均相同,平均查找长度也都相同15. ISAM⽂件和VSAM⽂件的区别之⼀是( )A. 前者是索引顺序⽂件,后者是索引⾮顺序⽂件B. 前者只能进⾏顺序存取,后者只能进⾏随机存取C. 前者建⽴静态索引结构,后者建⽴动态索引结构D. 前者的存储介质是磁盘,后者的存储介质不是磁盘⼆、填空题(本⼤题共10⼩题,每空2分,共20分)16. 数据的逻辑结构在计算机存储器内的表⽰,称为数据的____________。

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

2006年10月全国自考数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)1.数据结构是(D)A.一种数据类型B.数据的存储结构C.一组性质相同的数据元素的集合D.相互之间存在一种或多种特定关系的数据元素的集合2.算法分析的目的是(B)A.辨别数据结构的合理性B.评价算法的效率C.研究算法中输入与输出的关系D.鉴别算法的可读性3.在线性表的下列运算中,不.改变数据元素之间结构关系的运算是(D)A.插入 B.删除C.排序D.定位4.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为(B)A.3,2,6,1,4,5 B.3,4,2,1,6,5C.1,2,5,3,4,6 D.5,6,4,2,3,15.设串sl=″Data Structures with Java″,s2=″it″,则子串定位函数index(s1,s2)的值为(C)A.15 B.16 C.17 D.186.二维数组A[8][9]按行优先顺序存储,若数组元素A[2][3]的存储地址为1087,A[4][7]的存储地址为1153,则数组元素A[6][7]的存储地址为(A)A.1207 B.1209 C.1211 D.12137.在按层次遍历二叉树的算法中,需要借助的辅助数据结构是(A)A.队列 B.栈C.线性表D.有序表8.在任意一棵二叉树的前序序列和后序序列中,各叶子之间的相对次序关系(B)A.不一定相同 B.都相同C.都不相同D.互为逆序9.若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的(C)A.层次遍历算法 B.前序遍历算法C.中序遍历算法D.后序遍历算法10.若用邻接矩阵表示一个有向图,则其中每一列包含的″1″的个数为(A)A.图中每个顶点的入度B.图中每个顶点的出度1 / 9C.图中弧的条数D.图中连通分量的数目11.图的邻接矩阵表示法适用于表示(C)A.无向图 B.有向图C.稠密图D.稀疏图12.在对n个关键字进行直接选择排序的过程中,每一趟都要从无序区选出最小关键字元素,则在进行第i趟排序之前,无序区中关键字元素的个数为(D)A.i B.i+1 C.n-i D.n-i+113.下列排序算法中,其时间复杂度和记录的初始排列无关的是(B)A.插入排序 B.堆排序C.快速排序D.冒泡排序14.若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行比较的关键字依次为(A)A.f,c,b B.f,d,b C.g,c,b D.g,d,b15.若在文件中查询年龄在60岁以上的男性及年龄在55岁以上的女性的所有记录,则查询条件为(C)A.(性别=“男”)OR(年龄> 60)OR(性别=“女”)OR(年龄>55)B.(性别=“男”)OR(年龄> 60)AND(性别=“女”)OR(年龄>55)C.(性别=“男”)AND(年龄> 60)OR(性别=“女”)AND(年龄>55)D.(性别=“男”)AND(年龄> 60)AND(性别=“女”)AND(年龄>55)二、填空题(本大题共10小题,每小题2分,共20分)16.称算法的时间复杂度为O(f(n)),其含义是指算法的执行时间和(f(n))的数量级相同。

17.在一个长度为n的单链表L中,删除链表中*p的前驱结点的时间复杂度为(O(n))。

18.假设为循环队列分配的向量空间为Q[20],若队列的长度和队头指针值分别为13和17,则当前尾指针的值为(10)。

19.设s=″I AM A ATHLETE″,t=″GOOD″,则执行下列串操作序列之后得到的sub1为(″A GOOD ATHLETE″)。

substr (sub1,s,5,2);substr(sub2,s,6,8); strcpy(t1,t);strcat(t1,sub2);strcat(sub1,t1);20.广义表的深度是指(广义表展开后所含括号的最大层数)。

21.一棵含999个结点的完全二叉树的深度为(10)。

22.含n个顶点的无向连通图中至少含有(n-1)条边。

23.对表长为9000的索引顺序表进行分块查找,假设每一块的长度均为15,且以顺序查找2 / 9确定块,则在各记录的查找概率均相等的情况下,其查找成功的平均查找长度为(308.5)。

24.若对关键字序列(43,02,80,48,26,57,15,73,21,24,66)进行一趟增量为3的希尔排序,则得到的结果为(15,02,21,24,26,57,43,66,80,48,73)。

25.ISAM文件由主索引、(柱面索引)、(磁道索引)和主文件组成。

三、解答题(本大题共4小题,每小题5分,共20分)26.某广义表的表头和表尾均为(a,(b,c)),画出该广义表的图形表示。

答:27.已知二叉树的先序序列和中序序列分别为HDACBGFE和ADCBHFEG。

(1)画出该二叉树;(2)画出与(1)求得的二叉树对应的森林。

答:(1(2)28.已知带权图的邻接表如下所示,其中边表结点的结构为:依此邻接表从顶点C出发进行深度优先遍历。

(1)画出由此得到的深度优先生成树;(2)写出遍历过程中得到的从顶点C到其它各顶点的带权路径及其长度。

3 / 9答:(1(2)(C,D)8(C,D,B)28(C,D,B,A)39(C,D,B,F)37(C,D,B,F,E)5129.从空树起,依次插入关键字37,50,42,18,48,12,56,30,23,构造一棵二叉排序树。

(1)画出该二叉排序树;(2)画出从(1)所得树中删除关键字为37的结点之后的二叉排序树。

答:(1(2四、算法阅读题(本大题共4小题,每小题5分,共20分)4 / 930.已知用有序链表存储整数集合的元素。

阅读算法f30,并回答下列问题:(1)写出执行f30(a,b)的返回值,其中a和b分别为指向存储集合{2,4,5,7,9,12}和{2,4,5,7,9}的链表的头指针;(2)简述算法f30的功能;(3)写出算法f30的时间复杂度。

int f30(LinkList ha,LinkList hb){//LinkList是带有头结点的单链表//ha和hb分别为指向存储两个有序整数集合的链表的头指针LinkList pa,pb;pa=ha->next;pb=hb->next;while(pa && pb &&pa->data==pb->data){pa=pa->next;pb=pb->next;}if(pa==NULL&&pb==NULL) return 1;else return 0;}答:(1) 0 (2)比较两个整数集合的有序链表是否相等。

若相等则返回1,若不等则返回0。

(3)O(Min(m+n)),m和n分别为两整数集合的元素个数。

31.已知稀疏矩阵采用带行表的三元组表表示,其形式说明如下:#define MaxRow 100 //稀疏矩阵的最大行数typedef struct{int i,j,v; //行号、列号、元素值}TriTupleNode;typedef struct{TriTupleNode data[MaxSize];int RowTab[MaxRow+1]; //行表int m,n,t; //矩阵的行数、列数和非零元个数}RTriTupleTable;下列算法f31的功能是,以行优先的顺序输入稀疏矩阵的非零元(行号、列号、元素值),建立稀疏矩阵的带行表的三元组表存储结构。

请在空缺处填入合适内容,使其成为一个完整的算法。

(注:矩阵的行、列下标均从1起计)5 / 9void f31(RTriTupleTable *R){int i,k;scanf(″%d%d%d″,&R->m,&R->n,&R->t); R->RowTab[1]=0;k=1; //k指示当前输入的非零元的行号for(i=0;(①);i++){scanf(″%d%d%d″,(②),(③),m&R->data[i].v);while(k<R->data[i].i){(④);R->RowTab[k]=i;}}}答:①i<r->t ②&R->data[i].i ③&R->data[j].j ④k++32.已知二叉树的存储结构为二叉链表,其类型定义如下:typedef struct NodeType {DataType data;struct NodeType *lchild,*rchild;}BinTNode,*BinTree;阅读算法F32,并回答下列问题:(1)对于如图所示的二叉树,画出执行算法f32的结果;(2)简述算法f32的功能。

BinTree f32(BinTree bt1){BinTree bt2;if(bt1==NULL)bt2=NULL;else{bt2=(BinTNode *)malloc(sizeof(BinTNode));bt2->data=bt1->data;bt2->rchild=f32(bt1->lchild);bt2->lchild=f32(bt1->rchild);}return bt2;}6 / 97 / 9答:(1)(2)函数f32返回一个指向复制所得二叉树根节点的指针新建的二叉树上的各节点的左、右孩子是原二叉树各结点的、右左孩子。

33.假设有向图采用邻接表表示法,其定义如下: typedef struct{VertexNode adjlist[MaxVertexNum]; int n,e; //图的当前顶点数和弧数 }ALGraph; //邻接表类型其中顶点表结点VertexNode边表结点EdgeNode 下列算法f33的功能是,对以邻接表表示的有向图进行拓扑排序。

(1)阅读算法f33,并在空缺处填入合适的内容,使其成为一个完整的算法; (2)对于如图所示的邻接表,将执行算法f33后的topo[]结果填入给定的数组中。

void f33(ALGraph G,int topo[]){ int i,j,k,count=0;int indegree[MaxVertexNum];EdgeNode *p; //p 为指向边表结点的指针 Queue Q; //Q 为队列 FindIndegree(G, indegree);//求各顶点的入度,并置于入度向量indegree InitQueue(&Q); for(i=0;i<G.n;i++)if(!indegree[i])EnQueue(&Q,i); while(!QueueEmpty(&Q)){j=(①); topo[j]=++count;for(p=G.adjlist[j].firstedge;p;p=->next){k=p->adjvex;if(!(--indegree[k])) (②);}}if(count<G.n)printf(″\n图G中存在有环路″);}答:(1)①DeQueue(&Q) ②EnQueue(&Q,k)(2)topo[]01234567五、算法设计题(本大题10分)34.假设以带头结点的单链表表示有序表,单链表的类型定义如下:typedef struct node{DataType data;struct node *next}LinkNode,*LinkList;编写算法,从有序表A中删除所有和有序表B中元素相同的结点。

相关文档
最新文档