2012秋数据结构大题参考资料

合集下载

数据结构-数据结构历年考题及答案2

数据结构-数据结构历年考题及答案2

中国矿业大学2011-2012学年《数据结构》试卷(A卷)(考试时间:100分钟)一. 填空(每空2分,共40分)1. 数据结构式具有相同性质的数据元素的(1)。

2. 通常程序在调用另一个程序时,都需要使用一个(2)来保存被调用程序内分配的局部变量、形式参数的存储空间以及返回地址。

3. 有6行8列的二维数组A,每个元素用相邻的6个字节存储,存储器按字节编址,已知A的起始存储地址(基址)为1000,在行优先存储和列优先存贮情况下A[5,5]的存储地址分别为__(3)_____,_____(4)____。

4. 完全二叉树第4 个节点的父节点是第 (5) 节点,左孩子是第 (6) 个节点。

如果该二叉树有10层,则共有 (7) 个节点。

5. 请描述在循环队列Q中,队头和队尾指针分别由front和rear表示,该队列有10个存储空间,判断队空和队满的条件分别分:_____(8)________,_______(9)_________。

6. 字符串t=”child”,s=”cake”,请写出下列函数的结果:StrLength(t) =(10)__;Concat(SubString(s,3,1),SubString(t,2,2))=____(11)___。

7. 一棵二叉树为则后序序列为(12),中序序列为(13),先序序列为__(14)____。

8. 请用数据序列{53,17,12,66,58,70,87,25,56,60 }构造一棵二叉排序树_(15)_。

9.。

一个栈输入的序列式1,2,3,则可能的且以2为开头的输出序列是 (16) ,不可能的序列是____(17)____。

10. 有n个结点的无向完全图的边数分别为_______(18)_______。

11. 要从数据:2,3,4,8,9,11,13查找11,若采用折半查找法,则在(19)次比较后,才找到该数据。

12. 在直接插入排序、希尔排序、冒泡排序和快速排序中,平均情况下(20)_____最快。

2012年10月--2007年1月自考2331数据结构历年试题和答案

2012年10月--2007年1月自考2331数据结构历年试题和答案

全国2012年10月高等教育一、单项选择题(本大题共l5小题,每小题2分,共30分)1.一个算法的时间耗费的数量级称为该算法的( D ) D.时间复杂度2.顺序表便于( D ) D.按序号查找结点3.设带头结点的单循环链表的头指针为head,指针变量P指向尾结点的条件是( B ) B.p->next==head4.设以数组A[0..m-1]存放循环队列,front指向队头元素,rear指向队尾元素的下一个位置,则当前队列中的元素个数为( A ) A.(rear-front+m)%m5.下列关于顺序栈的叙述中,正确的是( A )A.入栈操作需要判断栈满,出栈操作需要判断栈空6.A是一个10×10的对称矩阵,若采用行优先的下三角压缩存储,第一个元素a0,0的存储地址为1,每个元素占一个存储单元,则a7,5的地址为( D ) D.347.树的后序遍历等价于该树对应二叉树的( C ) C.中序遍历8.使用二叉线索树的目的是便于( D ) D.查找一个结点的前趋和后继9.设无向图的顶点个数为n,则该图边的数目最多为( B) B.n(n-1)/2 10.可进行拓扑排序的图只能是(C)C.有向无环图11.下列排序方法中稳定的是(A)A.直接插入排序12.下列序列不为..堆的是(C)C.75,65,30,l5,25,4513.对线性表进行二分查找时,要求线性表必须是(C)C.顺序存储且按关键字有序14.分别用以下序列生成二叉排序树,其中三个序列生成的二叉排序树是相同的,不同..的序列是(A)A.(4,1,2,3,5)15.下列关于m阶B树的叙述中,错误..的是(A)A.每个结点至多有m个关键字二、填空题(本大题共10小题,每小题2分,共20分)16.数据元素之间的逻辑关系称为数据的__逻辑____结构。

17.在线性表中,表的长度定义为__数据元素的个数____。

18.用S表示入栈操作,X表示出栈操作,若元素入栈的顺序为1、2、3、4,为了得到1、3、4、2的出栈顺序,相应的S和X的操作序列为__SXSSXSXX____。

2012年数据结构期末考试题及答案

2012年数据结构期末考试题及答案

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)。

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 。

《数据结构》期末考试题及答案

《数据结构》期末考试题及答案

2011-2012学年第一学期期末考查《数据结构》试卷(答案一律写在答题纸上,在本试卷上做答无效)一、选择(每题1分,共10分)1.长度为n的线性表采用顺序存储结构,一个在其第i个位置插入新元素的算法时间复杂度为(D)A.O(0)B.O(1)C.O(n)D.O(n2)2.六个元素按照6,5,4,3,2,1的顺序入栈,下列哪一个是合法的出栈序列?(D)A.543612B.453126C.346512D.2341563.设树的度为4,其中度为1、2、3、4的结点个数分别是4、2、1、2,则树中叶子个数为(B )A.8B.9C.10D.114.设森林F对应的二叉树B有m个结点,B的右子树结点个数为n,森林F中第一棵树的结点个数是( B )A. m-nB.m-n-1C.n+1D.m+n5.若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是(B)A.9B.11C.15D.不确定6.下列哪一个方法可以判断出一个有向图是否有环。

(A)A.深度优先遍历B.拓扑排序C.求最短路径D.求关键路径7.第7层有10个叶子结点的完全二叉树不可能有(B )个结点。

A.73B.234C.235D.2368.分别用以下序列构造二叉排序树,与用其他三个序列构造的结果不同的是(B)A.(100,80,90,60,120,110,130)B.(100, 120, 110,130,80, 60,90)C.(100,60,80,90,120,110,130)D.(100,80, 60,90, 120, 130,110)9.对一组数据(84,47,25,15,21)排序,数据的排列次序在排序过程中变化如下:(1)84 47 25 15 21 (2)15 47 2584 21 (3)15 21 25 84 47(4)15 21 25 47 84则采用的排序方法是(B )A.选择排序B.起泡排序C.快速排序D.插入排序10.对线性表进行折半查找时,要求线性表必须(D)A.以顺序方式存储B.以顺序方式存储,且数据元素有序C.以链接方式存储D.以链接方式存储,且数据元素有序二、填空(每空1分,共15分)1.数据结构中评价算法的两个重要指标是时间复杂度、空间复杂度。

(完整)数据结构考试题及答案资料,推荐文档

(完整)数据结构考试题及答案资料,推荐文档

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)。

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 。

02142数据结构导论份真题及答案.doc

02142数据结构导论份真题及答案.doc

2012年10月高等教育自学考试全国统一命题考试数据结构导论试题课程代码:02142请考生按规定用笔将所有试题的答案涂、写在答题纸上。

选择题部分注意事项:1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。

2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。

如需改动,用橡皮擦干净后,再选涂其他答案标号。

不能答在试题卷上。

一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的。

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

1.下面几种算法时间复杂度阶数中,值最大的是A.O(nlog2n)B.O(n2)C.O(n)D.O(2n)2.即使输入非法数据,算法也能适当地做出反应或进行处理,不会产生预料不到的运行结果,这种算法好坏的评价因素称为A.正确性B.易读性C.健壮性D.时空性3.设顺序表的长度为100,则在第40个元素之后插入一个元素所需移动元素的个数为A.40B.60C.61D.1004.设带头结点的单循环链表的头指针为head,则判断该链表是否为空的条件是A. head->next==headB. head->next==NULLC. head!=NULLD. head==NULL5.在链栈的运算中,不需要...判断栈是否为空的是A.出栈B.进栈C.取栈顶元素D.求链栈的元素个数6.一个队列的输入序列是A,B,C,D,则该队列的输出序列是A.A,B,C,DB.B,C,D,AC.D,C,B,AD.C,D,B,A7.以行序为主序的二维数组a[3][5]中,第一个元素a[0][0]的存储地址是100,每个元素占2个存储单元,则a[1][2]的存储地址是A.100B.108C.114D.1168.对任何一棵二叉树T,若叶结点数为5个,则度为2的结点个数为A.4B.5C.6D.无法确定9.m个叶结点的哈夫曼树中,其结点总数为A.mB.2m+1C.2mD.2m-110.二叉树的中序遍历序列中,结点P排在结点Q之前的条件是A.在二叉树中P在Q的左边B.在二叉树中P在Q的右边C.在二叉树中P是Q的祖先D.在二叉树中P是Q的子孙11.有10个顶点的无向完全图的边数是A.11B.45C.55D.9012.在带权有向图中求两个结点之间的最短路径可以采用的算法是A.迪杰斯特拉(Dijkstra)算法B.克鲁斯卡尔(Kruskal)算法C.普里姆(Prim)算法D.深度优先搜索(DFS)算法13.二分查找(Binary Search)算法的时间复杂度是A.O(n2)B.O(nlog2n)C.O(n)D.O(log2n)14.在一棵初始时为空的二叉树中,依次插入键值序列50,72,43,85,75,20,38,45,65,60,构造对应的二叉排序树以后,查找元素60要进行的比较次数是A.2B.3C.4D.515.快速排序属于A.插入排序B.交换排序C.选择排序D.归并排序非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。

数据结构B卷以及答案

数据结构B卷以及答案

华东交通大学2012—2013学年第一学期考试卷试卷编号: (B )卷数据结构 课程 课程类别:必考生注意事项:1、本试卷共5页,总分100分,考试时间120分钟。

2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。

一、选择题(每题2分,共20分)1、栈和队列的共同特点是( A )。

A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2、用链接方式存储的队列,在进行插入运算时( D ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改 3、以下数据结构中哪一个是非线性结构?( D )A. 队列B. 栈C. 线性表D. 二叉树4、 设指针变量p 指向单链表中结点A ,若删除单链表中结点A ,则需要修改指针的操作序列为( A )。

(A) q=p->next ;p->data=q->data ;p->next=q->next ;free(q); (B) q=p->next ;q->data=p->data ;p->next=q->next ;free(q); (C) q=p->next ;p->next=q->next ;free(q); (D) q=p->next ;p->data=q->data ;free(q);5、 若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A [3]的比较序列的下标依次为( D )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,3承诺:我将严格遵守考场纪律,知道考试违纪、作弊的严重性,还知道请他人代考或代他人考者将被开除学籍和因作弊受到记过及以上处分将不授予学士学位,愿承担由此引起的一切后果。

专业 班级 学号 学生签名:6、设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为( A )。

《数据结构》习题及答案:第2章 线性表(第1次更新2012-3)

《数据结构》习题及答案:第2章 线性表(第1次更新2012-3)

第2章线性表一、选择题1.表长为N 的顺序表,当在任何位置上插入或删除一个元素的概率相等时,插入一个元素所需移动元素的平均次数为(),删除一个元素需要移动的元素个数为()。

【**,★】A. (N-1)/2B. NC. N+1D. N-1E. N/2F. (N+1)/2G. (N-2)/22.线性表是具有N 个()的有限序列。

【*】A、表元素B、字符C、数据元素D、数据项E、信息3.“线性表的逻辑顺序和物理顺序总是一致的。

”这个结论是()。

【*】A、正确的B、错误的C、不一定,与具体结构有关。

4.线性表采用链式存储结构时,要求内存中可用存储单元的地址()。

【*,★】A、必须是连续的B、部分地址必须是连续的C、一定是不连续的D、连续或不连续都可以。

5.带头结点的单链表为空的判定条件是()。

【*】A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL6.不带头结点的单链表head 为空的判定条件是()。

【*】A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL7.非空的循环单链表head 的尾结点P 满足()。

(注:带头结点)【*】A、P->NEXT=NULLB、p=NULLC、p->next==headD、p==head8.在一个具有n 个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是()。

【*,★】A、O(1)B、O(n)C、O(n2)D、O(nlog2n)9.在一个单链表中,若删除P 所指结点的后继结点,则执行()。

【*,★】A、p->next=p->next->nextB、p=p->next;p->next=p->next->nextC、p->next=p->next;D、p=p->next->next;10.在一个单链表中,若在P所指结点之后插入S所指结点,则执行()。

2012年数据结构本科试题及答案

2012年数据结构本科试题及答案

武汉大学计算机学院2012年-2013学年第一学期“数据结构”考试试题(A )姓名学号(序号)_ 班号要求:所有的题目的解答均写在答题纸上,需写清楚题目的序号。

每张答题纸都要写上姓名和序号。

一、单项选择题(每小题2分,共30分)1. 数据结构在计算机内存中的表示是指 。

A. 数据的存储结构 B. 数据结构 C. 数据的逻辑结构 D. 数据元素之间的关系2. 若线性表最常用的运算是存取第i 个元素及其前趋元素的值,则采用 存储方式节省时间。

A.单链表B.双链表C.单循环链表D.顺序表3. 在一个具有n 个结点的有序单链表中插入一个新结点使得仍然有序,其算法的时间复杂度为 。

A.O(log 2n)B.O(1)C.O(n 2)D.O(n) 4. 栈和队列的共同点是 。

A.都是先进后出 B.都是先进先出 C.只允许在端点处插入和删除元素 D.没有其同点5. 判定一个循环队列Q (存放元素位置为0~QueueSize-1,front 指向队中队首元素的前一个位置,rear 指向队中队尾元素的位置)队空的条件是 。

A.Q.front==Q.rearB.Q.front+1==Q.rearC.Q.front==(Q.rear+1)%QueueSizeD.Q.rear==(Q.front+1)%QueueSize 6. 串是 。

A.不少于一个字母的序列B.任意个字母的序列C.不少于一个字符的序列D.有限个字符的序列 7. 一个n×n 的对称矩阵A ,如果采用以列优先(即以列序为主序)的压缩方式存放到一个一维数组B 中,则B 的容量为 。

A. n 2B.22nC. 2)1(+n nD.2)1(2+n8. 若一棵3次树中有a 个度为1的节点,b 个度为2的节点,c 个度为3的节点,则该树中有 个叶子节点。

A.1+2b +3cB.a +2b +3cC.2b +3cD.1+b +2c 9. 一棵完全二叉树中有501个叶子节点,则至少有 个节点。

2012数据结构_习题及程序设计整理

2012数据结构_习题及程序设计整理

2012数据结构_习题及程序设计整理疯狂记忆力数据结构是计算机科学中非常重要的一个领域,它主要研究数据的组织、存储和管理方式。

在学习数据结构的过程中,习题和程序设计是提高理解和应用的重要手段。

下面将整理一些2012年的数据结构习题及程序设计内容,帮助读者巩固和深入理解这一领域的知识。

一、线性结构1. 线性表是数据结构中最基本的一种结构,它的特点是元素之间存在一对一的关系,先后次序唯一确定。

请写一个C语言程序,实现线性表的基本操作,包括插入、删除、查找等。

2. 栈是一种特殊的线性表,具有“先进后出”的特点。

设计一个栈,支持判断栈是否为空、入栈和出栈操作,并实现一个简单应用情境,例如操作系统任务的进出栈操作。

3. 队列也是一种特殊的线性表,具有“先进先出”的特点。

设计一个队列,支持判断队列是否为空、入队和出队操作,并实现一个简单应用情境,例如模拟排队等待的场景。

二、非线性结构1. 树是一种重要的非线性结构,它以分层的方式存储数据。

定义一个树的基本数据结构,包括节点的定义、插入节点、删除节点等操作。

2. 图是由节点和边组成的数据结构,用于表示多对多的关系。

请设计一个简单的图结构,实现图的初始化、添加节点、添加边以及遍历等基本操作。

三、查找与排序1. 二分查找是一种常见的查找算法,适用于有序数组。

请编写一个二分查找算法的Java程序,并验证其正确性。

2. 快速排序是一种常见的排序算法,通过分治法实现。

请实现一个快速排序算法的Python程序,并对随机生成的一组数据进行排序。

四、高级数据结构1. 堆是一种完全二叉树,主要用于实现高效的优先队列。

设计一个堆的数据结构,并实现堆排序算法。

2. 哈希表是一种以键值对存储数据的数据结构,通过哈希函数实现高效的数据查找。

请实现一个简单的哈希表,包括哈希函数的设计、数据的插入和查找等操作。

以上是一些2012年的数据结构习题及程序设计内容,涵盖线性结构、非线性结构、查找与排序以及高级数据结构等方面的内容。

《数据结构》历年考研真题及解答

《数据结构》历年考研真题及解答

《数据结构》考研真题及解答目录2009 年试题 (1)填空题 (1)解答题 (2)2010 年试题 (2)填空题 (2)解答题 (4)2011 年试题 (4)填空题 (4)解答题 (5)2012 年试题 (6)填空题 (6)解答题 (7)2013 年试题 (8)填空题 (8)解答题 (9)2014 年试题 (10)填空题 (10)解答题 (11)2015 年试题 (12)填空题 (12)解答题 (14)2009 年试题填空题1.为解决计算机与打印机之间速度不匹配的问题,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。

该缓冲区的逻辑结构应该是A.栈B.队列C.树D.图2.设栈 S 和队列 Q 的初始状态均为空,元素 abcdefg 依次进入栈 S。

若每个元素出栈后立即进入队列 Q,且7 个元素出队的顺序是 bdcfeag,则栈 S 的容量至少是A.1 B.2 C.3 D.43.给定二叉树图所示。

设 N 代表二叉树的根,L代表根结点的左子树,R代表根结点的右子树。

若遍历后的结点序列为 3,1,7,5,6,2,4,则其遍历方式是A.LRN B.NRL C.RLN D.RNL4.下列二叉排序树中,满足平衡二叉树定义的是5.已知一棵完全二叉树的第 6 层(设根为第 1 层)有8 个叶结点,则完全二叉树的结点个数最多是A.39 B.52 C.111 D.1196.将森林转换为对应的二叉树,若在二叉树中,结点u 是结点v 的父结点的父结点,则在原来的森林中,u 和v 可能具有的关系是I.父子关系II.兄弟关系III.u 的父结点与v 的父结点是兄弟关系A.只有IIB.I 和IIC.I 和IIID.I、II 和III7.下列关于无向连通图特性的叙述中,正确的是I.所有顶点的度之和为偶数II.边数大于顶点个数减1 III.至少有一个顶点的度为1A.只有IB.只有IIC.I 和IID.I 和III8.下列叙述中,不符合 m 阶B 树定义要求的是A.根节点最多有m 棵子树 B.所有叶结点都在同一层上C.各结点内关键字均升序或降序排列 D.叶结点之间通过指针链接9.已知关键序列 5,8,12,19,28,20,15,22 是小根堆(最小堆),插入关键字 3,调整后得到的小根堆是A.3,5,12,8,28,20,15,22,19B.3,5,12,19,20,15,22,8,28C.3,8,12,5,20,15,22,28,19D.3,12,5,8,28,20,15,22,1910.若数据元素序列 11,12,13,7,8,9,23,4,5 是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法只能是A.起泡排序 B.插入排序 C.选择排序 D.二路归并排序解答题41.(10 分)带权图(权值非负,表示边连接的两顶点间的距离)的最短路径问题是找出从初始顶点到目标顶点之间的一条最短路径。

数据结构习题课(2012)

数据结构习题课(2012)

数据结构习题课(2012)复习重点1.数据结构的概念,逻辑结构、物理结构的概念及各⾃包含的内容2.算法的特性、设计要求,如何度量算法的时间效率。

3.线性表的顺序/链式存储结构的特点,插⼊、删除算法。

4.栈和队列的逻辑特性,顺序栈的⼊栈/出栈、循环队列的⼊队/出队算法。

5.以三元组顺序表存放的稀疏矩阵的转置算法。

6.⼆叉树的性质及其四种遍历算法。

7.森林与⼆叉树的相互转换。

8.WPL、前缀编码的概念,哈夫曼树的构造算法。

9.图的相关概念,邻接矩阵及邻接表的存储结构。

10.图的深度优先/⼴度优先遍历算法。

11.最⼩⽣成树的两种算法。

12.拓扑排序的意义和算法。

13.最短路径算法。

14.顺序表、有序表的查找算法。

15.⼆叉排序树的性质、插⼊/删除算法、平衡⼆叉树的性质、插⼊算法。

16.哈希表的相关概念,常⽤的冲突处理⽅法。

17.直接插⼊排序、希尔排序、快速排序、堆排序、归并排序的算法。

注意:1.上述每个知识点可能会以任何题型出现,复习的时候别把它们当做“简答题”来复习。

2.红⾊(下划线)标识的知识点或算法,只要求对给出的初始数据,能画出结果则可。

其他的算法则可能会出现在“算法题”中。

⾃测题第1章绪论⼀、判断1.顺序存储⽅式只能⽤于存储线性结构。

(错)2.顺序查找法适⽤于存储结构为顺序或链式存储的线性表。

(对)⼆、选择1.计算机算法必须具备输⼊、输出、( B )等5个特性。

A.可⾏性、可移植性和可扩展性B.可⾏性、确定性和有穷性C.确定性、有穷性和稳定性D.易读性、安全性和稳定性2.算法在发⽣⾮法操作时可以作出处理的特性称为(C )。

A.正确性B.易读性C.健壮性D.可靠性3.数据结构是⼀门研究⾮数值计算的程序设计问题中计算机的(A )以及它们之间的( B )和运算的学科。

A.操作对象B.计算⽅法C.逻辑存储D.数据映像A.结构B.关系C.运算D.算法4.在数据结构中,逻辑上数据结构可分为:(B )A.动态结构和静态结构B.线性结构和⾮线性结构C.紧凑结构和⾮紧凑结构D.内部结构和外部结构5.数据结构主要研究数据的(D )A.逻辑结构B.存储结构C.逻辑结构和存储结构D.逻辑结构和存储结构及其运算的实现6.为了描述n个⼈之间的同学关系,可⽤(C )结构表⽰A.线性表B.树C.图D.队列7.下⾯的程序段违反了算法的(A )原则void sam(){ int n=2;while (!odd(n)) n+=2;printf(n);}A.有穷性B.确定性C.可⾏性D.健壮性三、问答1.什么是逻辑结构和物理结构?各⾃包含哪⼏种?2.线性结构和树型结构的特点分别是什么?3.简述顺序存储结构与链式存储结构在表⽰数据元素之间关系上的只要区别。

数据结构练习题2012信管

数据结构练习题2012信管

2、 设有两个串 p 和 q,求 q 在 p 中首次出现的位置的运算称作:B A.连接 B.模式匹配 C.求子串 D.求串长
3、设 s =’I AM A STUDENT’, t =’GOOD’, q=’WORKER’。求: 答: StrLength(s) =14 StrLength(t) =4 SubString(s, 8, 7)= ‘STUDENT’ 第五章 1、一个二维数组 A,行下标的范围是 1 到 6,列下标的范围是 0 到 7,每个数
3
答:入队(尾部插入) :rear->next=S; rear=S; 出队(头部删除) : front->next=p->next; 8、什么叫“假溢出” ?如何解决? 答:在顺序队中,当尾指针已经到了数组的上界,不能再有入队操作,但 其实数组中还有空位置,这就叫“假溢出”。解决假溢出的途径———采 用循环队列。 9、数组Q[n]用来表示一个循环队列,f 为当前队列头元素的前一位置,r 为 队尾元素的位置。假定队列中元素的个数小于 n,计算队列中元素的公式为: (A) r-f (B) (n+f-r)% n (C)n+r-f (D) (n+r-f)% n 4 种公式哪种合理? 当 r ≥f 时(A)合理;当 r < f 时(C)合理;综合 2 种情况,以(D) 的表达最为合理 10、在一个循环队列中,若约定队首指针指向队首元素的前一个位置。那么, 从循环队列中删除一个元素时,其操作是 先 移动队首指针 ,后 取出元 素 。 11、线性表、栈与队的异同点 答:相同点:逻辑结构相同,都是线性的;都可以用顺序存储或链表存储; 栈和队列是两种特殊的线性表,即受限的线性表(只是对插入、删除运算 加以限制) 。 不同点: ① 运算规则不同,线性表为随机存取,而栈是只允许在一端进行插入 和删除运算,因而是后进先出表 LIFO;队列是只允许在一端进行插入、另 一端进行删除运算,因而是先进先出表 FIFO。 ② 用途不同,线性表比较通用;堆栈用于函数调用、递归和简化设计 等;队列用于离散事件模拟、多道作业处理和简化设计等。 第四章 1、串是一种特殊的线性表,其特殊性体现在: B (A)可以顺序存储 (C)可以链式存储 (B)数据元素是一个字符 (D)数据元素可以是多个字符

2012数据结构_习题及程序设计整理

2012数据结构_习题及程序设计整理

第二章1、首尾顺序逆置2、找出顺序表中最大值和最小值及位置3、头插法算法4、尾插法:5、带头结点的单链表,向表头插入一个结点:6、单链表中查找第i个结点:8、单链表删除操作:9、重要习题,头结点与尾结点互换:10、重要习题,一个单链表拆为两个奇偶单链表:试写一个算法,将一个头结点为a的带头结点的单链表A分解成两个单链表A和B,其中头结点指针分别为a和b,使得A链表中含有原链表A中序号为奇数的元素,而B链表中含有原链表中序号为偶数的元素,并保持原来的相对顺序。

11、循环链表插入结点后仍然保持有序:12、重要习题(删除表中所有数值相同的多余元素):13、双向链表的删除操作:14、双向链表的插入操作:在带头结点的双向循环链表中插入一个新结点,需要修改的指针数量是4个。

包括新插入的新结点的指针,还有插入结点的前面结点的next域,和后面结点的prior域。

第二章课后习题14、设计两个顺序表A和B,且都递增有序,试写一算法,从A中删除与B中相同的元素(也就是计算A-B)。

15、已知head P指向结点与其后继结点位置交换。

(q为p的后继结点,s r16、已知两个单链表A和B分别表示两个集合,其元素值递增有序,试写一算法,求A和B的交集C,要求C同样以元素递增的单链表形式存储。

r=head; 查找p的前趋结点y的结点。

第三章一、队列算法f31的功能是清空带头结点的链队列Q,请填空。

Type struct node{ DataType data;Struct node *next;}QueueNode;{QueueNode *front; //队头指针二、填空题15、如果编号为1,2,3的3辆列车进入一个栈式结构的站台,那么可能得到的3辆车出站序列有哪些?不可能出现的序列是什么?16、简述下列程序算法的功能(假设元素为整数类型)(1) void ex31(SeqStack *S){int A[80],i,n;n=0;while(!empty(S)){ A[n]=pop[S];n++;}for(i=0;i<n;i++)push(S,A[i]);}答案:此算法功能是通过一个数组将一个栈中的所有元素逆置存放。

2012年贵州大学数据结构复习题及答案

2012年贵州大学数据结构复习题及答案

2012年贵州大学数据结构复习题及答案1、下面程序的时间复杂度为___C_ 。

for(i=0;i< m;i++) for(j=0;j< n;j++) A[i][j]=i*j;(A). O(m2)(B). O(n2)(C). O(m*n)(D). O(m+n)2、在数据结构中,从逻辑上可以把数据结构分成__C__ 。

(A). 动态存储结构和静态存储结构(B). 紧凑结构和非紧凑结(C). 线形结构和非线性结构(D). 内部结构和外部结构3、下面程序的时间复杂度为__A__ 。

for(i=0;i< m;i++) for(j=0;j< t;j++) c[i][j]=0; for(i=0;i< m;i++) for(j=0;j< t;j++) for(k=0;k< n;k++) c[i][j]=c[i][j]+a[i][k]*b[k][j];(A). O(m*n*t)(B). O(m+n+t)(C). O(m+n*t)(D). O(m*t+n)4、下面程序的时间复杂度为__D__ 。

i=1;while(i<=n) i=i*5;(A). O(1)(B). O(n)(C). O(5*n)(D). O(log5n)5、算法指的是_D__ 。

(A). 计算机程序(B). 解决问题的步骤(C). 排序算法(D). 解决问题的有限运算序列6、某程序的时间复杂度为(3n+nlog2n+n2+8),其数量级表示为 C(A). O(n)(B). O(nlog2n)(C). O(n2)(D). O(log2n)7、数据结构是一门研究非数值计算的程序设计问题中的操作对象以及它们之间的__B____和运算的科学。

(A). 结构(B). 关系(C). 运算(D). 算法8、算法分析的目的是__C____。

(A). 找出算法的合理性(B). 研究算法的输入/输出关系(C). 分析算法的有效性以求改进(D). 分析算法的易懂性9、数据的基本单位是____B____。

真题_2012年_数据结构

真题_2012年_数据结构

参考答案:B
5.对有n个顶点、e条边且使用邻接表存储的有向图进行广度 优先遍历,其算法时间复杂度是 A. O(n) B. O(e) C. O(n+e) D. O(n*e)
参考答案:C
6.若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为 零,则关于该图拓扑序列的结论是 A.存在,且唯一 B.存在,且不唯一 C.存在,可能不唯一 D.无法确定是否存在
3.若一棵二叉树的前序遍历序列为 a,e,b,d,c,后序遍历序列为 b,c,d,e,a,则根结点的孩子结点
A.只有 e B.有 e、 b C.有 e、 c D.无法确定
参考答案:A
4.若平衡二叉树的高度为6,且所有非叶结点的平衡因子均为 1, 则该平衡二叉树的结点总数为 A. 12 B. 20 C. 32 D.33
参考答案:C
8. 下列关于最小生成树的叙述中,正确的是 I. 最小生成树的代价唯一 Ⅱ. 所有权值最小的边一定会出现在所有的最小生成树中 Ⅲ.使用普里姆 (Prim)算法从不同顶点开始得到的最小生成树一 定相同 IV. 使用普里姆算法和克鲁斯卡尔(Kruskal)算法得到的最小生 成树总不相同 A. 仅 I B. 仅 Ⅱ C. 仅 I、 Ⅲ D. 仅 Ⅱ、Ⅳ
参考答案:C
7. 对如下有向带权图,若采用迪杰斯特拉 (Dijkstra) 算法求从源点a到其他各顶点的最短路径,则得到 的第一条最短路径的目标顶点是b,第二条最短路 径的目标顶点是 c,后续得到的其余各最短路径的 目标顶点依次是 A. d,e,f B. e,d,f C. f,d,e D. f,e,d
2012年全国硕士研究生入学统一考 试计算机学科专业基础综合试卷
数据结构部分
一、单项选择题:1~40小题。每小题2分,共80分。 在每小题给出的四个选项中,请选出一项最符合题 目要求的。

1252数据结构历年试题及答案

1252数据结构历年试题及答案

试卷代号:1252中央广播电视大学2012-2013学年度第二学期“开放本科”期末考试数据结构【本)试题一、单项选择题(每小题2分,共30分)1.在C语言中,顺序存储长度为3的字符串,需要占用( )个字节。

A.4 B.3C.6 D.122。

串函数StrCat(a,b)的功能是进行串( )。

A.比较 B.复制C。

赋值 D.连接3.-棵有n个结点采用链式存储的二叉树中,共有( )个指针域为空。

A.n+l B.nC.n-l D.n-24.设一棵哈夫曼树共有n个非叶结点,则该树有( )个叶结点。

A.n B.n+lC.n-l D.2n5.从一个栈顶指针为top的链栈中删除一个结点时,用变量x保存被删结点的值,则执行( )。

A. x=top->data;top=top->nextB.x=top->dataC. top= top->next; x=top->dataD.top=top->next;x=data6.一棵完全二叉树共有5层,且第5层上有六个结点,该树共有( )个结点。

A.30 B.20C.21 D.237.在一个无向图中,所有顶点的度数之和等于边数的( )倍。

^.O上;.Z.3C.1.5 D.28.已知如图1所示的一个图,若从顶点V,出发,按深度优先搜索法进行遍历,则可能得到的一种顶点序列为( )。

9.已知如图2所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的一种顶点序列为( )。

A. abcedfB. abcefdC. aebcfdD. acfdeb10.对二叉排序树进行( )遍历,可以使遍历所得到的序列是有序序列。

A.按层次 B.后序C.中序 D.前序11.在有序表(2,4,7,14,34,43,47,64,75,80,90,97,120)中,用折半查找法查找值80 时,经( )次比较后查找成功。

A.4 B.2赢“C.3 D.512.有一个长度为9的有序表,按折半查找对该表进行查找,在等概率情况下查找成功的平均比较次数为( )。

考研 数据结构试题(含答案)

考研 数据结构试题(含答案)

我以一名大学生的人格尊严保证,在本场考试中,自觉遵守考试纪律,服从考试管理,决不作弊或帮助别人作弊!签名:学院专业学号级班··················密···················封·····················线··················命题人签字:系主任签字:审核院长签字:共印份数:第1页共6页聊城大学计算机学院2012—2013学年第1学期期末考试2011级《数据结构》试题(闭卷B卷)一、单项选择题(共15题,每题2分,共30分)1.研究数据结构就是研究(D )。

A.数据的逻辑结构B.数据的存储结构C.数据的逻辑结构和存储结构D.数据的逻辑结构、存储结构及其基本操作2.在数据结构中,从逻辑上可以把数据结构分为(C )。

A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构3.算法分析的两个主要方面是(A )。

A.空间复杂度和时间复杂度B.正确性和简单性C.可读性和文档性D.数据复杂性和程序复杂性4.下面程序段的时间复杂度是( C )。

2012数据结构题资料

2012数据结构题资料

●__(4)__的特点是数据结构中元素的存储地址与其关键字之间存在某种映射关系。

(4)A.树形存储结构B.链式存储结构C.索引存储结构D.散列存储结构●若循环队列以数组 Q[O..m-1] 作为其存储结构变量 rear 表示循环队列中队尾元素的实际位置,其移动按 rear=(rear+1) mod m 进行,变量 length 表示当前循环队列中的元素个数,则循环队列的队首元素的实际位置是__(5)__。

(5)A.rear-length B.(rear-length+m) mod mC.(1+rear+m-length) mod m D.m-length●一个含有n个顶点和e条边的简单无向图,在其邻接矩阵存储结构中共有__(6)__个零元素。

(6)A.e B.2e C.n2-e D.n2-2e●若一棵哈夫曼(Huffman)树共有9个顶点,则其叶子结点的个数为__(7)__。

(7)A.4 B.5 C.6 D.7●若采用邻接矩阵来存储简单有向图,则其某一个顶点i的入度等于该矩阵__(8)__。

(8)A.第i行中值为1的元素个数 B.所有值为1的元素总数C.第i行及第i列中值为1的元素总个数D.第i列中值为1的元素个数●在—棵度为3的树中,若有2个度为3的结点,有1个度为2的结点,则有__(9)__个度为0的结点。

(9)A.4 B.5 C.6 D.7●设结点x和y是二叉树中任意的两个结点,在该二叉树的先根遍历序列中x在y之前,而在其后根遍历序列中x在y之后,则x和y的关系是__(10)__。

(10)A.x是y的左兄弟B.x是y的右兄弟C.x是y的祖先D.x是y的后裔●设顺序存储的某线性表共有123个元素,按分块查找的要求等分为3块。

若对索引表采用顺序查找方法来确定子块,且在确定的子块中也采用顺序查找方法,则在等概率的情况下,分块查找成功的平均查找长度为__(11)__。

(11)A.21 B.23 C.41 D.62DCDBDCCB(顺序查找平均查找长度是:(n+1)/2 (1+3)/2+(41+1)/2=23 123/3=41)●在一棵完全二叉树中,其根的序号为1,_(33)_可判定序号为p和q的两个结点是否在同一层。

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

注意:
作业通过附件的形式提交(格式请使用Word2003兼容的文件格式),请同学直接通过本系统进行网上作业提交。

本课程不接收其它任何形式的作业提交(如邮件、论坛发贴等)。

为了方便大家做作业,也便于批改。

特规定格式如下:
1、必须在作业前面添加诚实作业保证
......,格式见后面;
2、写清楚章节号和题目编号;
3、不要抄题目;
4、需要解题步骤。

------------诚实作业保证--------------------
我真诚地保证:
我自己独立地完成了整个作业的解答,没有抄袭、剽窃的行为。

如果在求解中,我遇到了什么困难而求教于人,那么,我将在作业报告中详细地列举我所遇到的问题,以及别人给我的提示。

在此,我感谢XXX, …, XXX对我的启发和帮助。

在具体的题目中,我还会详细地提到他们在各个方面对我的帮助。

我的解答中凡是引用到其他程序或文档之处,例如教材、课堂笔记、网上的源代码以及其他参考书上的代码段,我都已经在作业里很清楚地注明了引用的出处。

[我的解答在xxx, xxx部分参考了URL(http:???)的内容,xxx给了我xxx提示,在xxx地方我进行了xxx的改进,使得xxx。

]
<学号> <学生姓名>
--------------------------------------------
如果提交的作业没有这段保证,将被认为违背了诚实作业规则,作业将不予承认。

以第一章作业为例,作业格式如下:
第一章
一、【解答】…………(不要抄写题目)
二、【解答】…………(选择题、填空题等只需要给出答案即可)
以上只是举例,不是正确的输出结果。

请严格按上述要求书写你的作业,否则作业无效。

第三章集合、稀疏矩阵和广义表
[3.2] 画出下列广义表的图形表示:
(1) D(A(c), B(e), C(a, L(b, c, d)))
(2) J1(J2(J1, a, J3(J1)), J3(J1))
广义表(1)的图形表示为:
广义表(2
广义表(1)的存储表示为:
广义表(2)的存储表示为:
第五章 树
[5.3] 给定二叉树的两种遍历序列,分别是:
前序遍历序列:D ,A ,C ,E ,B ,H ,F ,G ,I ;中序遍历序列:D ,C ,B ,E ,H ,A ,G ,I ,F 试画出二叉树B ,并简述由任意二叉树B 的前序遍历序列和中序遍历序列求二叉树B 的思想方法。

方法是:由前序先确定r o o t ,由中序可确定r o o t 的左、右子树。

然后由其左子树的元素集合和右子树的集合对应前序遍历序列中
的元
素集合,可继续确定r o o t的左右孩子。

将他们分别作为新的r o o t,不断递归,则所有元素都将被唯一确定,问题得解。

[5.4] 试写出如图所示的二叉树分别按先序、中序、后序遍历时得到的结点序列
先序:A B D F J G K C E H I L M
中序:B F J D G K A C H E L I M
后序:J F K G D B H L M I E C A
第八章图的应用
[8.1] 将给定的图简化为最小的生成树,要求从顶点1出发
5
[8.2] 根据所给有向图,写出一个拓扑序列
其中的一个拓扑序列为:V1,V2,V3,V4,V5,V6,V7
[8.3] 已知二维数组表示的图的邻接矩阵如下图所示。

试分别画出自顶点1出发进行遍历所得的深度优先生成树和广度优先生成树。

相关文档
最新文档