2015山东省C与数据结构链表考资料
2015年1月全国自考数据结构导论模拟试卷(一)
2015年1月全国自考数据结构导论模拟试卷(一)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
第1题.【正确答案】 B【你的答案】本题分数2分第2题算法的计算量的大小称为计算的【】A. 效率B. 复杂性C. 现实性D. 难度【正确答案】 B【你的答案】本题分数2分第3题 .【正确答案】 A【你的答案】本题分数2分第4题排序算法中,第一趟排序后,任一元素都不能确定其最终位置的算法是【】A. 选择排序B. 插入排序C. 冒泡排序D. 快速排序【正确答案】 B【你的答案】本题分数2分第5题排序趟数与序列的原始状态有关的排序方法是【】A. 插入排序法B. 选择排序法C. 二路归并排序法D. 快速排序法【正确答案】 D【你的答案】本题分数2分第6题已知某完全二叉树采用顺序存储结构,结点数据信息的存放顺序依次为A、B、C、D、E、F、G、H,该完全二叉树的后根遍历序列为【】A. HDBEFCGAB. HDEBFGCAC. DHEBFGCAD. DEHBFGCA【正确答案】 B【你的答案】本题分数2分第7题磁盘是一种广泛使用的外部存储设备,对磁盘中的数据的存取操作【】A. 只能用顺序方式B. 只能用随机方式C. 既能用顺序方式也能用随机方式D. 方式取决于具体的机器【正确答案】 C【你的答案】本题分数2分第8题若有三个字符的字符串序列依次执行入栈操作,则其所有可能的输出排列共有【】A. 3种B. 4种C. 5种D. 6种【正确答案】 C【你的答案】本题分数2分第9题若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则最节省运算时间的存储方式是【】A. 单链表B. 双链表C. 单循环链表D. 带头结点的双循环链表【正确答案】 D【你的答案】本题分数2分第10题当采用分块查找时,数据的组织方式为【】A. 数据分成若干块,每块内数据有序B. 数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块C. 数据分成若干块,每块内数据有序,每块内最大(或最小)的数据组成索引块D. 数据分成若干块,每块(除最后一块外)中数据个数需相同【正确答案】 B【你的答案】本题分数2分第11题若评价算法的时间复杂性,比较对数阶量级与线性阶量级,通常【】A. 对数阶量级复杂性大于线性阶量级B. 对数阶量级复杂性小于线性阶量级C. 对数阶量级复杂性等于线性阶量级D. 两者之间无法比较【正确答案】 B【你的答案】本题分数2分第12题数据在计算机存储器内表示时,物理地址与逻辑地址不相同的,称之为【】A. 存储结构B. 逻辑结构C. 链式存储结构D. 顺序存储结构【正确答案】 C【你的答案】本题分数2分第13题线性结构中的一个结点代表一个【】A. 数据元素B. 数据项C. 数据D. 数据结构【正确答案】 A【你的答案】本题分数2分第14题一组记录的键值为(46,74,18,53,14,20,40,38,86,65),利用堆排序的方法建立的初始堆为【】A. (14,18,38,46,65,40,20,53,86,74)B. (14,38,18,46,65,20,40,53,86,74)C. (14,18,20,38,40,46,53,65,74,86)D. (14,86,20,38,40,46,53,65,74,18)【正确答案】 B【你的答案】本题分数2分第15题.【正确答案】 D二、填空题(本大题共13小题,每小题2分,共26分)请在每小题的空格中填上正确答案。
2015考研计算机数据结构试题及答案
2015年考研必备资料2015年考研计算机数据结构试题及答案目录2015年考研计算机数据结构试题及答案(1) (2)2015年考研计算机数据结构试题(1) (2)2015年考研计算机数据结构试题答案(1) (5)2015年考研计算机数据结构试题及答案(2) (6)2015年考研计算机数据结构试题(2) (6)2015年考研计算机数据结构试题答案(2) (9)2015年考研计算机数据结构试题及答案(3) (11)2015年考研计算机数据结构试题(3) (11)2015年考研计算机数据结构试题答案(3) (13)2015年考研计算机数据结构试题及答案(4) (15)2015年考研计算机数据结构试题(4) (15)2015年考研计算机数据结构试题答案(4) (17)2015年考研计算机数据结构试题及答案(5) (19)2015年考研计算机数据结构试题(5) (19)2015年考研计算机数据结构试题答案(5) (21)2015年考研计算机数据结构试题及答案(1)2015年考研计算机数据结构试题(1)一、选择题(24分)1.下列程序段的时间复杂度为( )。
i=0,s=0; while (s(A) O(n1/2) (B) O(n1/3) (C) O(n) (D) O(n2)2.设某链表中最常用的操作是在链表的尾部插入或删除元素,则选用下列( )存储方式最节省运算时间。
(A) 单向链表 (B) 单向循环链表(C) 双向链表 (D) 双向循环链表3.设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为( )。
(A) s->next=p->next;p->next=-s; (B) q->next=s; s->next=p;(C) p->next=s->next;s->next=p; (D) p->next=s;s->next=q;4.设输入序列为1、2、3、4、5、6,则通过栈的作用后可以得到的输出序列为( )。
2015年山东省C++答案 数据结构试卷及答案考资料
C.数据元素之间的关系 D.数据的存储方法
38、若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用
D 存储方式最节省运算时间。
A.单链表 B.给出表头指针的单循环链表 C.双链表 D.带头结点的双循环链表
(2)A.空间复杂度和时间复杂度 B.正确性和简明性
C.可读性和文档性 D.数据复杂性和程序复杂性
34、链表不具备的特点是 A 。
A.可随机访问任一结点 B.插入删除不需要移动元素
C.不必事先估计存储空间 D.所需空间与其长度成正比
B.只有表尾指针没有表头指针的循环单链表
C.非循环双链表
D.循环双链表
33、算法分析的目的是 C ,算法分析的两个主要方面是 A 。
(1)A.找出数据结构的合理性 B.研究算法中的输入和输出的关系
C.分析算法的效率以求改进 C.分析算法的易读性和文档性
41、从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A.O(1) B.O(n)
C.O(1Ogzn) D.O(n2)
42、在一个具有n个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是 B 。
A.O(1) B.O(n) C.O(n2) D.O(nlog2n)
A 顺序表 B单链表 C 双链表 D单循环链表
26、一个栈的入栈序列是1,2,3,4,5,则不可能的出栈序列是( )
A 5,4,3,2,1 B 4,5,3,2,1 C 4,3,5,1,2 D 1,2,3,4,5
27、一个栈的入栈序列是1,2,3,4,5,则不可能的出栈序列是( )
(1)A.找出数据结构的合理性 B.研究算法中的输入和输出的关系
2015年数据结构期末考试题及答案,推荐文档(2021年整理)
2015年数据结构期末考试题及答案,推荐文档(word版可编辑修改) 编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(2015年数据结构期末考试题及答案,推荐文档(word版可编辑修改))的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为2015年数据结构期末考试题及答案,推荐文档(word版可编辑修改)的全部内容。
2012年数据结构期末考试题及答案一、选择题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) 。
c语言练习题6(数组与链表,有答案)
1、(1)数据结构中,与所使用的计算机无关的是数据的_C_______。
A)存储结构B)物理结构C)逻辑结构D)物理和存储结构评析:数据结构概念一般包括3个方面的内容,数据的逻辑结构、存储结构及数据上的运算集合。
数据的逻辑结构只抽象的反映数据元素之间的逻辑关系,而不管它在计算机中的存储表示形式。
2、栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是____D____。
A)ABCED B)DBCEA C)CDABE D)DCBEA评析:栈操作原则上“后进先出”,栈底至栈顶依次存放元素A、B、c、D,则表明这4个元素中D是最后进栈,B、c处于中间,A最早进栈。
所以出栈时一定是先出D,再出c,最后出A。
3、线性表的顺序存储结构和线性表的链式存储结构分别是____B____。
A)顺序存取的存储结构、随机存取的存储结构B)随机存取的存储结构、顺序存取的存储结构C)随机存取的存储结构、随机存取的存储结构D)任意存取的存储结构、任意存取的存储结构评析:顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式LOC(ai)。
LOC(a1)+(i-1)L计算得到,从而实现了随机存取。
对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。
4、在单链表中,增加头结点的目的是____A__。
A)方便运算的实现B)使单链表至少有一个结点C)标识表结点中首结点的位置D)说明单链表是线性表的链式存储实现评析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。
5、数据处理的最小单位是___C_____。
A)数据B)数据元素C)数据项D)数据结构评析:数据处理的最小单位是数据项;由若干数据项组成数据元素;而数据是指能够被计算机识别、存储和加工处理的信息载体;数据结构是指数据之间的相互关系和数据运算。
2015山东省C与数据结构链表必过技巧
24、广义表A=(A,B,(C,D),(E,(F,G))),则head(tail(head(tail(tail(A)))))=( D )。
A) (G) B) (D) C) C D) D
25、n个顶点,e条边的有向图的邻接矩阵中非零元素有( C )个。
A)n B)2e C)e D) n+e
A)p->next=p->next->next; B) p=p->next;
C)p=p->next->next; D) p->next=p;
33、用一维数组A进行顺序存储时,若起始地址为loc(A1),元素长度为c,则A的第i个数组单元在存放地址loc(Ai),等于( B )。
A)13 B)33 C)18 D)40
3、在数据结构中,从逻辑上可以把数据结构分为( C )。
A)动态结构和静态结构 B)紧凑结构和非紧凑结构
C)线性结构和非线性结构 D)内部结构和外部结构
4、广义表head((((c,d)
C)空表 D)((a,b),(c,d))
5、在数据结构中,从逻辑上可以把数据结构分为( C )。
A)动态结构和静态结构 B)紧凑结构和非紧凑结构
C)线性结构和非线性结构 D)内部结构和外部结构
C) s->next=hs; hs=s; D) s->next=hs; hs=hs->next;
35、链式存储的存储结构所占存储空间( A )。
A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
B)只有一部分,存放结点值
C)只有一部分,存储表示结点间关系的指针
9、下列序列中,执行第一趟快速排序后得到的序列是( A )。
c课程设计链表
c 课程设计链表一、教学目标本节课的学习目标主要包括以下三个方面:1.知识目标:学生需要掌握链表的基本概念,了解链表的原理和结构,熟悉链表的基本操作,如创建、插入、删除和遍历。
2.技能目标:学生能够运用链表知识解决实际问题,具备使用链表编程的能力。
3.情感态度价值观目标:培养学生对计算机科学的兴趣,提高学生分析问题和解决问题的能力,培养学生的团队合作精神。
二、教学内容本节课的教学内容主要包括以下几个部分:1.链表的基本概念和原理:介绍链表的定义、特点和应用场景,让学生了解链表作为一种数据结构的重要性。
2.链表的结构和操作:讲解链表的结构,包括节点结构和链表的创建、插入、删除和遍历等基本操作。
3.链表的应用:通过实例分析,让学生学会如何运用链表解决实际问题,提高编程能力。
三、教学方法为了实现本节课的教学目标,我们将采用以下几种教学方法:1.讲授法:教师讲解链表的基本概念、原理和操作,引导学生掌握链表知识。
2.案例分析法:分析实际案例,让学生学会运用链表解决具体问题。
3.实验法:让学生动手实践,完成链表的创建、插入、删除和遍历等操作,提高编程能力。
4.小组讨论法:分组讨论,培养学生的团队合作精神和沟通能力。
四、教学资源为了支持本节课的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:提供相关章节,为学生提供系统的链表知识。
2.参考书:为学生提供更多的学习资料,拓展知识面。
3.多媒体资料:制作PPT等课件,直观展示链表的结构和操作。
4.实验设备:为学生提供电脑等实验设备,进行链表操作实践。
五、教学评估为了全面、客观、公正地评估学生的学习成果,我们将采取以下评估方式:1.平时表现:关注学生在课堂上的参与程度、提问回答、小组讨论等,记录学生的表现,占总成绩的30%。
2.作业:布置与链表相关的编程练习,检查学生的理解和掌握程度,占总成绩的20%。
3.考试:安排一次链表知识考试,测试学生对链表概念、原理和操作的掌握,占总成绩的50%。
2015山东省计算机等级考试二级理论考试试题及答案
1、程序流程图(PFD)中的箭头代表的是(B)A. 数据流B. 控制流C. 调用关系D. 组成关系2、数据的存储结构是指(B)A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据3、索引属于(B)A. 模式B. 内模式C. 外模式D. 概念模式4、设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 3515、下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构6、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度7、关系数据库管理系统能实现的专门关系运算包括(B)A. 排序、索引、统计B. 选择、投影、连接C. 关联、更新、排序D. 显示、打印、制表8、检查软件产品是否符合需求定义的过程称为(A)A. 确认测试B. 集成测试C. 验证测试D. 验收测试9、下面不属于软件工程的3个要素的是(D)A. 工具B. 过程C. 方法D. 环境10、在深度为5的满二叉树中,叶子结点的个数为(C)A. 32B. 31C. 16D. 1511、将E-R图转换到关系模式时,实体与联系都可以表示成(B)A. 属性B. 关系C. 键D. 域12、数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库13、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度。
2015考研真题数据结构
2015考研真题数据结构数据结构是计算机科学中非常重要的一门学科,考研中也是一个重点考察的内容。
在2015年的考研真题中,数据结构也是一个热门出题领域。
本文将对2015年考研真题中的数据结构部分进行详细解析和讨论。
一、选择题2015年考研真题数据结构部分的选择题主要集中在树、图和排序算法等内容上。
其中,树的遍历、图的表示和遍历算法、排序算法的性能分析等是考点。
首先是树的遍历问题。
在2015年的考研真题中,给出了一棵二叉树的前序和中序遍历序列,要求根据这两个序列重建原来的二叉树。
这是一个常见的树问题,可以通过递归的方式进行求解。
另外,图的表示和遍历算法也是一个重要考点。
在2015年的考研真题中,给出了一个图的邻接矩阵表示和一个起点,要求输出从起点出发的深度优先遍历和广度优先遍历序列。
这是一个典型的图遍历问题,可以使用深度优先搜索和广度优先搜索算法进行求解。
在排序算法方面,2015年考研真题主要涉及快速排序和归并排序两种算法。
要求对给定的序列进行排序,并分析所给序列的最好、最坏和平均时间复杂度。
快速排序和归并排序是两种常见的高效排序算法,对于考研而言,了解它们的性能分析是很重要的。
二、编程题2015年考研真题的数据结构部分也包含了一道编程题,主要考察的是链表的操作。
在这道编程题中,给出了链表的头结点和一个整数K,要求将链表中第K个节点移动到链表的末尾,并输出新链表的头结点。
这是一个典型的链表操作问题。
可以通过遍历链表找到第K个节点,并进行相应的操作实现题目要求。
三、解题思路对于2015年考研真题中的数据结构部分,我们可以总结出一些解题的思路和方法。
首先,对于树的遍历问题,可以通过递归的方式来求解。
利用前序遍历和中序遍历的性质,可以重建原来的二叉树。
在递归的过程中,可以不断地将前序和中序遍历序列缩小范围,直至找到根节点。
其次,对于图的表示和遍历算法,可以使用深度优先搜索和广度优先搜索算法进行求解。
使用邻接矩阵来表示图,然后利用递归或队列等数据结构进行遍历,可以得到图的深度优先遍历和广度优先遍历序列。
2015河北省C与数据结构链表考资料
1、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的2、广义表A=(A,B,(C,D),(E,(F,G))),则head(tail(head(tail(tail(A)))))=( D )。
A) (G) B) (D) C) C D) D3、有一个有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99}。
当用二分查找法查找键值为84的结点时,经( B )比较后查找成功。
A) 4 B)3 C)2 D)124、用一维数组A进行顺序存储时,若起始地址为loc(A1),元素长度为c,则A的第i个数组单元在存放地址loc(Ai),等于( B )。
A)loc(A1)+i*c B)loc(A1)+(i-1)*cC)loc(A1)+i*c+1 D)loc(A1)+(i+1)*c5、链式存储的存储结构所占存储空间( A )。
A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针B)只有一部分,存放结点值C)只有一部分,存储表示结点间关系的指针D)分两部分,一部分存放结点值,另一部分存放结点所占单元数6、设给定问题的规模为变量n,解决该问题的算法所需时间为Tn=O(f(n)),Tn表示式中记号O表示( A )。
A)一个数量级别 B)一个平均值C)一个最大值 D)一个均方值7、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C)。
A)顺序表示法 B)单字符为结点的单链表表示法C)等量分块表示法 D)不等量分块表示法8、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点的个数是( B )。
A)9 B)11 C)15 D)不能确定9、链式存储的存储结构所占存储空间( A )。
A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针B)只有一部分,存放结点值C)只有一部分,存储表示结点间关系的指针D)分两部分,一部分存放结点值,另一部分存放结点所占单元数10、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指针,当做出栈处理时,top变化为( C )。
山东省专升本《数据结构》试卷2
山东省专升本《数据结构》试卷2山东省专升本《数据结构》试卷2一、单项选择题:(每小题2分,共10分)对于下列各题,在备选答案中选出一个正确的,并将其编号填在“”位置上。
1. 折半查找法要求查找表中各元素的键值必须是。
A. 递增或递减B. 递增C. 递减D. 无序2. 若对某线性表最常进行的操作是在最后一个元素之后插入和删除第一个元素,则采用存储方式最节省运算时间。
A. 单链表B. 双链表C. 仅有头指针的单循环链表D. 仅有尾指针的单循环链表3. 有64个结点的完全二叉树的深度为(假设根结点的层次为1)。
A. 8B. 7C. 6D. 54. 对于键值序列(2,33,21,18,65,38,7,49,24,86),用筛选法建堆,必须从键值为的结点开始。
A. 86B. 2C. 65D. 385. 设图G 用邻接表存储,则求每个顶点入度的算法时间复杂度为。
A. O(n)B. O(n+e)C. O(n*n)D. O(n*e)二、判断题:(每小题2分,共10分)判断下列各题是否正确,若正确,在题后的括号内填“T”,否则填“F”。
1. 在队满情况下不能作入队处理,否则,将产生“上溢”。
()2. 基于插入思想的排序算法都是稳定的。
()3. 一个有向图的邻接表和逆邻接表中的结点个数不一定相等。
()4. 若一棵二叉树的任一非叶子结点度为2,则该二叉树为满二叉树。
()5. 广义表是线性表的推广,因此也可以采用顺序方式进行存储。
()三、填空题:(每小题2分,共10分)1.在单链表中,删除指针P 所指结点的后继结点的语句是:。
2.有向图G 用邻接矩阵A[1..n,1..n] 存储表示,其第i 行的所有元素之和等于顶点i 的。
3.基数排序算法的时间复杂度为。
4.平衡二叉树中每个结点的平衡因子定义为。
5.利用直接插入排序算法对有n 个元素的数据表进行排序,在最坏情况下,元素的移动次数为。
四、解答下列各题:(每小题10分,共40分)1. 写出采用顺序方式存储的栈的类型描述及相应的入栈、出栈操作的示意图。
2012山东省数据结构(C++)试题及答案
1、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的2、有一个有序表{1,4,6,10,18,35,42,53,67,71,78,84,92,99}。
当用二分查找法查找键值为84的结点时,经( B )比较后查找成功。
A) 4 B)3 C)2 D)123、已知广义表L=((x,y,z),a,(u,t,w)),从L 表中取出原子项t 的操作是( D )。
A) Head(Head(Tail(Tail(L))))B) Tail(Head(Head(Tail(L))))C) Head(Tail(Head(Tail(L))))D)Head(Tail(Head(Tail(Tail(L)))))4、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的5、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( D )存储方式最节省运算时间。
A) 单链表 B) 仅有头指针的单循环链表C) 双链表 D) 仅有尾指针的单循环链表6、广义表head(((a,b),(c,d)))的运算结果为( A )。
A)(a,b) B)(c,d)C)空表 D)((a,b),(c,d))7、n个顶点的强连通图至少有( A )条边。
A)n B)n+1 C)n-1 D)n(n-1)8、已知广义表L=((x,y,z),a,(u,t,w)),从L 表中取出原子项t 的操作是( D )。
A) Head(Head(Tail(Tail(L))))B) Tail(Head(Head(Tail(L))))C) Head(Tail(Head(Tail(L))))D)Head(Tail(Head(Tail(Tail(L)))))9、在一个链队列中,假定front和rear分别为队首和队尾指针,则插入一个结点的操作为( B )。
2014-2015B学年二学期数据结构期末考试试卷(A卷)
3.试编写算法,将一个用循环链表表示的稀疏多项式分解成两个多项式,使这两个多项式中各自仅含奇次项或者偶次项,并要求利用原链表中的结点空间构成这两个链表。
4.试利用循环队列编写k阶斐波那契序列中前n+1项(f0,f1,…,fn)的算法,要求满足:
A、(n-1)/2 B、n C、n+1 D、n-1
E、n/2 F、(n+1)/2 G、(n-2)/2
2.下面的叙述不正确的是
A、线性表在链式存储时,查找第i个元素的时间同i的值成正比
B、线性表在链式存储时,查找第i个元素的时间同i的值无关
C、线性表在顺序存储时,查找第i个元素的时间同i的值成正比
D、线性表在顺序存储时,查找第i个元素的时间同i的值无关
1.线性表(a1,a2,…,an)用顺序映射表示时,ai和ai+1(1<=i<n〉的物理位置相邻吗?链接表示时呢?
2.如何通过改链的方法,把一个单向链表变成一个与原来链接方向相反的单向链表?
3.如果已知森林的前序序列和后序序列分别为ABCDEFIGJH和BDCAIFJGHE,请画出该森林
4.数据结构与数据类型有什么区别?
A、top==0 B、top==1 C、top==-1 D、top==m
10.串是一中特殊的线性表,其特殊性体现在。
A、可以顺序存储B、数据元素是一个字符
C、可以链接存储D、数据元素可以是多个字符
11.设树T的高度为4,其中度为l、2、3和4的结点个数分别为4、2、1、1,则T中的叶子数为
A、5 B、6 C、7 D、8
3.在作进栈运算时,应先判别栈是否(①),在作退栈运算时应先判别栈是否(②)。当栈中元素为n个,作进栈运算时发生上溢,则说明该栈的最大容量为(③)。
2015数据结构复习_C++版_学生
数据结构(C++版)复习要点考试说明:考试时间为 120 分钟,总分 100 分。
考试题型为:一、单选题:(每小题 1分,本大题共 10 分)二、填空题:(每空 2 分,本大题共 20分)三、简答题 :(每小题 5分,本大题共 50 分)四、算法设计题 :(每小题 10分,本大题共 20 分)第一章绪论本章主要介绍了一些基本概念。
对于本章内容的掌握主要以概念为主。
主要知识要点1、理解数据、数据元素、数据项、数据对象、数据类型、数据结构的概念。
2、掌握如何用二元组来表示一个数据结构。
掌握数据的四类基本逻辑结构(集合、线性结构、树型结构、图状或网状结构)。
3、理解顺序存储方法和链式存储方法是怎样存储数据的。
4、时间复杂度和空间复杂度(给程序能写出复杂度),常用操作的时间复杂度。
例题: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是(D )。
A.线性结构 B. 树型结构 C. 物理结构 D. 图型结构2.下面程序的时间复杂为( B )for ( i=1 , s=0; i<=n ; i++ ) {t=1 ; for(j=1 ; j<=i ;j++) t=t*j ;s=s+t ;}2 3 4A.O(n)B. O(n 2)C. O(n 3)D. O(n 4)3.数据的物理结构主要包括________ 顺序___和___链式______ 两种情况。
4.下面程序段的时间复杂度是 i=s=0; while(s<n) { i++; s+=i; } 第一次执行完 s+=i, s = 1第二次 s = 3 = 1+2 第三次 s = 6 = 1+2+3 第四次 s = 10 = 1+2+3+4 第 k 次s=1+2+3+4+...+k == k*(k+1)/2那么当 k*(k+1)/2 >=n 的时候停止,即 k = 关于 n 的表达式是根号的 , n 1/2第二章线性表本章主要介绍了线性表的定义、存储方式的描述和基本运算以及实现算法。
2015年山东省数据整理深入
1、后序遍历最后访问根结点,即在递归算法中,根是压在栈底的。
采用后序非递归算法,栈中存放二叉树结点的指针,当访问到某结点时,栈中所有元素均为该结点的祖先。
本题要找p和q 的最近共同祖先结点r ,不失一般性,设p在q的左边。
后序遍历必然先遍历到结点p,栈中元素均为p的祖先。
将栈拷入另一辅助栈中。
再继续遍历到结点q时,将栈中元素从栈顶开始逐个到辅助栈中去匹配,第一个匹配(即相等)的元素就是结点p 和q的最近公共祖先。
typedef struct{BiTree t;int tag;//tag=0 表示结点的左子女已被访问,tag=1表示结点的右子女已被访问}stack;stack s[],s1[];//栈,容量够大BiTree Ancestor(BiTree ROOT,p,q,r)//求二叉树上结点p和q的最近的共同祖先结点r。
{top=0; bt=ROOT;while(bt!=null ||top>0){while(bt!=null && bt!=p && bt!=q) //结点入栈{s[++top].t=bt; s[top].tag=0; bt=bt->lchild;} //沿左分枝向下if(bt==p) //不失一般性,假定p在q的左侧,遇结点p时,栈中元素均为p的祖先结点{for(i=1;i<=top;i++) s1[i]=s[i]; top1=top; }//将栈s的元素转入辅助栈s1 保存if(bt==q) //找到q 结点。
for(i=top;i>0;i--)//;将栈中元素的树结点到s1去匹配{pp=s[i].t;for (j=top1;j>0;j--)if(s1[j].t==pp) {printf(“p 和q的最近共同的祖先已找到”);return (pp);}}while(top!=0 && s[top].tag==1) top--; //退栈if (top!=0){s[top].tag=1;bt=s[top].t->rchild;} //沿右分枝向下遍历}//结束while(bt!=null ||top>0)return(null);//q、p无公共祖先}//结束Ancestor2、设一棵二叉树的结点结构为 (LLINK,INFO,RLINK),ROOT为指向该二叉树根结点的指针,p 和q分别为指向该二叉树中任意两个结点的指针,试编写一算法ANCESTOR(ROOT,p,q,r),该算法找到p和q的最近共同祖先结点r。
2015年山东烟台大学数据结构考研真题
2015年山东烟台大学数据结构考研真题一、选择题(本大题共25小题,每小题2分,共50分)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.在下面的程序段中,对x的赋值语句的频度为()for(k=1;k<n;k++)for(j=1;j<n;j++)x=x+1;A.0(2n)B.0(n)C.0(n)D.0(logen)7.以下哪个数据结构是多型数据类型结构()A.栈B.广义表C.数组D.字符串8.顺存储设计时,存储单元的地址()。
A.一定连续B.一定不连续C.不一定连续D.部分连续,部分不连续9.假设I和0分别表示进栈和出栈操作,栈的初始状态为空,下面所示的I/0序列中()是合法的?A.IOIOII00B.IeC.III0000ID.III0000I010.串是一种特殊的线性表,其特殊形表现在()A.可以顺序存储B.数据元素是单个字符C.可以连接存储D.数据元素类型相同11.可以用()定义一个完整的数据结构。
A.数据元素B.数据对象C.数据关系D.抽象数据类型12.有关图中路径的定义,表述正确的是(A.路径是顶点和相邻顶点偶对构成的边所形成的序列B.路径是图中相邻顶点的序列C.路径是不同边所形成的序列D.路径是不同顶点和不同边所形成的集合13.已知有向图G=(V,E),其中V=(V1,V2,V3,V4,V5,V6,V7),E=(<V1,V2>,<V1,V3>,<V1,V4>,<V2,V5><V3,V5>,<V3,V6>,<V4,V6>,<V5,V7>,,<V6,V7>},则图G的拓扑序列是()A.V1,V3,V4,V6,V2,V5,V7B.V1,V3,V2,V6,V4,V5,V7C.V1,V3,V4,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V714.设单链表中指针p指向结点A,若要删除A的直接后继,则所需修改指针的操作为(A.p->next=p->next->nextB.p=p->nextC.p=p->next->nextD.p->next=p15.下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是()A.堆排序B.直接插入排序C.冒泡排序D.快速排序16.数据表A中每个元素距其最终位置较近,则最省时间的排序算法是( A.插入排序B.堆排序C.直接选择排序D.快速排序17.适合于磁带存储的文件是()A.散列文件B.索引文件C.顺序文件D.多关键字文件18.一棵二叉树的中根遍历序列为debac,后根遍历序列为dabec,,则先根遍历序列为()A.acbedB.cedbaC.deabcD.becab19.在一个有向图中,所有顶点的度数之和与图的边数的比是()A.1:2B.1:1C.2:1D.4:120.含有n个结点的二叉树用二叉链表表示时,空指针域个数为()A.n-1B.n D.n+221.对n个不同值进行冒泡排序,在元素无序的情况下比较的次数为()A.n*(n-1)/2B.nC.n+1D.n122.对称矩阵A[N]N],A[1][1]为首元素,将下三角(包括对角线)元素以行优先顺序存储到一维数组元素T[1]至T[N(N+1)/2]中,则任一下三角元素A[i][j]存于T[k]中,下标k为()A.i*(i-1)/2+jB.jG-1)/2+1C.i(j-i)/2+1D.j(-1)/2+123.设有数组A[i,j],数组的每个元素长度为3字节,i的值为1到8,j的值为1到10,数组从内存首地址adr开始顺序存放,当用以列为主存放时,元素A[5,8]的存储首地址为()。
山东计算机c语言二级考试题库
山东计算机c语言二级考试题库
1.什么是字符串?
A.字符串是由字符构成的一串字符集合。
2.什么是函数?
A.函数是一组语句的集合,每个函数都有一个名字,它们可以接受参数,并返回一个值。
3.什么是指针?
A.指针是一种特殊的变量,它可以存放地址,并指向该地址中所存储的值。
4.数组和链表有什么区别?
A.数组是一种存储数据的顺序结构,它以连续的内存地址存储数据;而链表是一种分散存储的结构,它是由一系列指针构成的链表结构来存储数据。
5.什么是循环?
A.循环是一种程序的控制结构,它可以让程序重复执行相同的操作,直到满足一些条件为止。
6.什么是语句?
A.语句是构成程序的基本单位,用于表达一个完整的意思。
7.什么是结构?
A.结构是用来组织多个变量的组合,它们可以一起作为一个整体来存储和传输数据。
8.什么是枚举?
A.枚举是一种值的集合,用来表示一组有限的、相关的值。
9.什么是文件?
A.文件是一个存储在电脑硬盘上的一小段数据,它可以用来保存程序或者信息。
10.什么是变量?
A.变量是程序中的一个标识符,它可以用来指向存储在内存中的值,并在程序运行过程中存储和更新值。
2013山东省数据结构(C++)考资料
1、( C )在进行插入操作时,常产生假溢出现象。
A)顺序栈 B)循环队列C)顺序队列 D)链队列2、如果结点A有3个兄弟,而且B为A的双亲,则B的度为( B )。
A)3 B)4 C)5 D)13、下面关于线性表的叙述中,错误的是哪一个?( D )A)线性表采用顺序存储,必须占用一片连续的存储单元。
B)线性表采用链接存储,便于插入和删除操作。
C)线性表采用链接存储,不必占用一片连续的存储单元。
D)线性表采用顺序存储,便于进行插入和删除操作。
4、队列的操作的原则是( A )。
A)先进先出 B) 后进先出C) 只能进行插入 D) 只能进行删除5、设一数列的顺序为1,2,3,4,5,6,通过栈结构不可能排成的顺序数列为( B )。
A)3,2,5,6,4,1 B)1,5,4,6,2,3C)2,4,3,5,1,6 D)4,5,3,6,2,16、广义表head(((a,b),(c,d)))的运算结果为( A )。
A)(a,b) B)(c,d)C)空表 D)((a,b),(c,d))7、数据结构中,在逻辑上可以把数据结构分成( B )。
A)动态结构和静态结构B)线性结构和非线性结构C)紧凑结构和非紧凑结构D)内部结构和外部结构8、下列各种数据结构中属于线性结构的有( A )。
A)栈 B) 二叉树C) 广义表 D) 图9、二叉树第i(i≥1)层上至多有( C )结点。
A)2i B)2i C)2i-1 D)2i-110、某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( D )存储方式最节省运算时间。
A) 单链表 B) 仅有头指针的单循环链表C) 双链表 D) 仅有尾指针的单循环链表11、已知栈的最大容量为4。
若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4 C) 3,2,5,4,1,6 D) 1,4,6,5,2,312、栈进行插入和删除操作的特点是( A )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C) 3,2,5,4,1,6 D) 1,4,6,5,2,3
16、设一数列的顺序为1,2,3,4,5,6,通过栈结构不可能排成的顺序数列为( B )。
A)3,2,5,6,4,1 B)1,5,4,6,2,3
C)2,4,3,5,1,6 D)4,5,3,6,2,1
17、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点的个数是( B )。
A)9 B)11 C)15 D)不能确定
18、对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。这样的排序方法是( A )。
C)p->next=s->next; s->next=p D)p->next=s; s->next=q;
6、二叉树第i(i≥1)层上至多有( C )结点。
A)2i B)2i C)2i-1 D)2i-1
7、以下属于顺序存储结构优点的是( A )。
C) 3,2,5,4,1,6 D) 1,4,6,5,2,3
23、串的逻辑结构与( D )的逻辑结构不同。
A)线性表 B)栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指针,当做出栈处理时,top变化为( C )。
C)部分地址必须是连续 D)必须是不连续的
31、在一个链队列中,假定front和rear分别为队首和队尾指针,则插入一个结点的操作为( B )。
A)front=front->next; B) rear=rear->next;
C) rear=front->next; D) front=rear->next ;
9、已知栈的最大容量为4。若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4
C) 3,2,5,4,1,6 D) 1,4,6,5,2,3
10、线性表的链接实现有利于( A )运算。
14、广义表head(((a,b),(c,d)))的运算结果为( A )。
A)(a,b) B)(c,d)
C)空表 D)((a,b),(c,d))
15、已知栈的最大容量为4。若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) A, B, C, D, E
B) B, C, D, E, A
C) E, A, B, C, D
D) E, D, C, B, A
30、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
A)插入 B)读元素
C)查找 D)定位
11、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的
12、下列各种数据结构中属于线性结构的有( A )。
A)top不变 B)top=0 C)top-- D)top++
25、串的逻辑结构与( D )的逻辑结构不相同。
A)线性表 B)栈
C)队列 D)集合
26、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元素,其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。
A)栈 B) 二叉树
C) 广义表 D) 图
13、线索二叉树中某结点D,没有左孩子的条件是( B )。
A)D->Lchild=Null B) D->ltag=1
C) D->Rchild=Null D) D->ltag=0
A)直接选择排序 B)直接插入排序
C)快速排序 D)起泡排序
19、对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。这样的排序方法是( A )。
A)直接选择排序 B)直接插入排序
A)p->next=p->next->next; B) p=p->next;
C)p=p->next->next; D) p->next=p;
5、在一个单链表中,已知q结点是p结点的前趋结点,若在q和p之间插入s结点,则须执行( A ) 。
A)q->next=s; s->next=p; B)s->next=p->next; p->next=s;
C)快速排序 D)起泡排序
20、若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( D )存储方式最节省时间。
A)顺序表 B)双链表 C)带头结点的双循环链表 D)单循环链表
21、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。
32、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的
A)13 B)33 C)18 D)40
27、已知栈的最大容量为4。若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4
C) 3,2,5,4,1,6 D) 1,4,6,5,2,3
A) 存储密度大 B) 插入运算方便
C)删除运算方便 D)可方便地用于各种逻辑结构的存储表示
8、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的
A)栈 B) 二叉树
C) 广义表 D) 图
3、串的逻辑结构与( D )的逻辑结构不同。
A)线性表 B)栈
C)队列 D)树
4、设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为( A )。
1、已知栈的最大容量为4。若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4
C) 3,2,5,4,1,6 D) 1,4,6,5,2,3
2、下列各种数据结构中属于线性结构的有( A )。
28、广义表A=(A,B,(C,D),(E,(F,G))),则head(tail(head(tail(tail(A)))))=( D )。
A) (G) B) (D) C) C D) D
29、设有一个栈,元素的进栈次序为A, B, C, D, E,下列是不可能的出栈序列是( C )。
A)顺序表示法 B)单字符为结点的单链表表示法
C)等量分块表示法 D)不等量分块表示法
22、已知栈的最大容量为4。若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。
A) 5,4,3,2,1,6 B) 2,3,5,6,1,4