2012新疆维吾尔自治区JAVA版数据结构试题及答案

合集下载

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 。

数据结构(Java版)习题解答

数据结构(Java版)习题解答

AI N D E X练习题答案第一章练习题答案(a) n+(n–1)+(n–2)+…+2+1=2)1(+ n n (b) n+(n–1)+(n–2)+…+2+1=2)1(+nnf(n)≦c.g(n) →f(n)=O(g(n))(a) f(n)=100n+9c=101, g(n)=n, n0=10得知f(n)=O(n)(b) f(n)=1000n2+100n–8c=2000, g(n)= n2, n0=1得知f(n)=O(n2)(c) f(n)=5*2n+9 n2+2c=10, n0=5得知f(n)=O(2n)f(n)≧c g(n) →f(n)=Ω(g(n)) (a) f(n)=3n+1c=2, n0=1, g(n)=n得知f(n)=Ω(n)(b) f(n)=100n2+4n+5c=10, n0=1, g(n)= n2得知f(n)=Ω(n2)(c) f(n)=8*2n+8n+16c=8, n0=1, g(n)= 2n得知f(n)=Ω(n2)c1.g(n)≦f(n)≦c2.g(n) →f(n)= Θ(g(n))(a) f(n)=3n+2c1=3, c2=6, n0=1得知f(n) = Θ (n)(b) f(n)=9n2+4n+2c1=9, c2=16, n0=1得知f(n) = Θ (n2)(c) f(n)=8n4+5n3+5c1=8, c2=20, n0=1得知f(n) = Θ (n4)A-2练习题解答第二章练习题答案1. 分别以行为主和以列为主说明之。

(a) 以行为主A(i, j)=l0+(i–1)*u2*d+(j–1)*d(b) 以列为主A(i, j)=l0+(j–1)*u1*d+(i–1)*d2. 以列为主A(i, j)=l0+(j–12)*md+(i–l1)dm=u1–l1+1=5–(–3)+1=9m=u2–l2+1=2–(–4)+1=7A(1, 1) =100+(1–(–4))*9+(1–(–3))=100+45+4=1493. 分别以行为主和以列为主的说明。

2012新疆维吾尔自治区java版本基础

2012新疆维吾尔自治区java版本基础

1、若第n件物品能放入背包,则问题变为能否再从n-1件物品中选出若干件放入背包(这时背包可放入物品的重量变为s-w[n])。

若第n件物品不能放入背包,则考虑从n-1件物品选若干件放入背包(这时背包可放入物品仍为s)。

若最终s=0,则有一解;否则,若s<0或虽然s>0但物品数n<1,则无解。

(1)s-w[n],n-1 //Knap(s-w[n],n-1)=true(2)s,n-1 // Knap←Knap(s,n-1)2、假设以邻接矩阵作为图的存储结构,编写算法判别在给定的有向图中是否存在一个简单有向回路,若存在,则以顶点序列的方式输出该回路(找到一条即可)。

(注:图中不存在顶点到自己的弧)有向图判断回路要比无向图复杂。

利用深度优先遍历,将顶点分成三类:未访问;已访问但其邻接点未访问完;已访问且其邻接点已访问完。

下面用0,1,2表示这三种状态。

前面已提到,若dfs(v)结束前出现顶点u到v的回边,则图中必有包含顶点v和u的回路。

对应程序中v的状态为1,而u是正访问的顶点,若我们找出u的下一邻接点的状态为1,就可以输出回路了。

void Print(int v,int start ) //输出从顶点start开始的回路。

{for(i=1;i<=n;i++)if(g[v][i]!=0 && visited[i]==1 ) //若存在边(v,i),且顶点i的状态为1。

{printf(“%d”,v);if(i==start) printf(“\n”); else Print(i,start);break;}//if}//Printvoid dfs(int v){visited[v]=1;for(j=1;j<=n;j++ )if (g[v][j]!=0) //存在边(v,j)if (visited[j]!=1) {if (!visited[j]) dfs(j); }//ifelse {cycle=1; Print(j,j);}visited[v]=2;}//dfsvoid find_cycle() //判断是否有回路,有则输出邻接矩阵。

java数据结构测试题及答案解析

java数据结构测试题及答案解析

java数据结构测试题及答案解析java数据结构测试题及答案解析一、概述本文档旨在提供一套完整且详细的java数据结构测试题及答案解析。

通过这些测试题,您可以测试自己对java数据结构的理解程度,并通过答案解析来深入了解相关的概念和技巧。

二、章节2.1 数组题目1:请编写一个方法,将一个给定的数组按照从小到大的顺序进行排序。

题目2:请编写一个方法,查找一个给定的元素在数组中的索引位置。

如果找不到,则返回-1:答案解析:对于题目1,可以使用经典的排序算法(如冒泡排序、插入排序、快速排序等)来实现。

具体实现方法可以参考相关的算法教材。

对于题目2,可以使用线性搜索或者二分搜索来实现。

线性搜索的时间复杂度为O(n),二分搜索的时间复杂度为O(logn)。

具体实现方法可以参考相关的算法教材。

2.2 链表题目1:请编写一个方法,将一个给定的链表按照从小到大的顺序进行排序。

题目2:请编写一个方法,查找一个给定的元素在链表中的索引位置。

如果找不到,则返回-1:答案解析:对于题目1,可以使用经典的排序算法(如冒泡排序、插入排序、快速排序等)来实现。

具体实现方法可以参考相关的算法教材。

对于题目2,可以使用遍历链表的方式来查找。

时间复杂度为O(n)。

具体实现方法可以参考相关的算法教材。

2.3 栈和队列题目1:请编写一个方法,判断一个给定的字符串是否是一个有效的括号序列。

题目2:请编写一个方法,将一个给定的字符串按照逆序输出。

答案解析:对于题目1,可以使用栈来实现。

遍历字符串,如果遇到左括号,则将其入栈;如果遇到右括号,则判断栈是否为空,若为空或者栈顶元素不是与之对应的左括号,则说明括号序列不合法。

时间复杂度为O(n)。

具体实现方法可以参考相关的算法教材。

对于题目2,可以使用栈来实现。

遍历字符串,将每个字符入栈,然后依次出栈输出。

时间复杂度为O(n)。

具体实现方法可以参考相关的算法教材。

2.4 树题目1:请编写一个方法,判断一个给定的二叉树是否是平衡二叉树。

2012新疆维吾尔自治区计算机等级考试试题 二级C试题(必备资料)

2012新疆维吾尔自治区计算机等级考试试题 二级C试题(必备资料)

1、算法一般都可以用哪几种控制结构组合而成(D)A. 循环、分支、递归B. 顺序、循环、嵌套C. 循环、递归、选择D. 顺序、选择、循环2、在一棵二叉树上第5层的结点数最多是(B) 注:由公式2(k-1)得A. 8B. 16C. 32D. 153、算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间4、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。

其中数据独立性最高的阶段是(A)A. 数据库系统B. 文件系统C. 人工管理D. 数据项管理5、程序流程图(PFD)中的箭头代表的是(B)A. 数据流B. 控制流C. 调用关系D. 组成关系6、下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构7、对建立良好的程序设计风格,下面描述正确的是(A)A. 程序应简单、清晰、可读性好B. 符号名的命名要符合语法C. 充分考虑程序的执行效率D. 程序的注释可有可无8、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)A. 概要设计B. 详细设计C. 可行性分析D. 需求分析9、下面对对象概念描述错误的是(A)A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性10、算法一般都可以用哪几种控制结构组合而成(D)A. 循环、分支、递归B. 顺序、循环、嵌套C. 循环、递归、选择D. 顺序、选择、循环11、对建立良好的程序设计风格,下面描述正确的是(A)A. 程序应简单、清晰、可读性好B. 符号名的命名要符合语法C. 充分考虑程序的执行效率D. 程序的注释可有可无12、在一棵二叉树上第5层的结点数最多是(B) 注:由公式2(k-1)得A. 8B. 16C. 32D. 1513、在关系数据库中,用来表示实体之间联系的是(D)A. 树结构B. 网结构C. 线性表D. 二维表14、算法一般都可以用哪几种控制结构组合而成(D)A. 循环、分支、递归B. 顺序、循环、嵌套C. 循环、递归、选择D. 顺序、选择、循环15、算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间。

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年的数据结构习题及程序设计内容,涵盖线性结构、非线性结构、查找与排序以及高级数据结构等方面的内容。

2012新疆维吾尔自治区数据结构与算法试题及答案

2012新疆维吾尔自治区数据结构与算法试题及答案

1、采用链结构存储线性表时,其地址( B )。

A)必须是连续的 B)连续不连续都可以C)部分地址必须是连续 D)必须是不连续的2、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元素,其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。

A)13 B)33 C)18 D)403、设单链表中指针p指着结点A,若要删除A之后的结点(若存在),则需要修改指针的操作为( A )。

A)p->next=p->next->next B)p=p->nextC)p=p->nexe->next D)p->next=p4、下列各种数据结构中属于线性结构的有( A )。

A)栈 B) 二叉树C) 广义表 D) 图5、数据结构中,在逻辑上可以把数据结构分成( B )。

A)动态结构和静态结构B)线性结构和非线性结构C)紧凑结构和非紧凑结构D)内部结构和外部结构6、设单链表中指针p指着结点A,若要删除A之后的结点(若存在),则需要修改指针的操作为( A )。

A)p->next=p->next->next B)p=p->nextC)p=p->nexe->next D)p->next=p7、n个顶点,e条边的有向图的邻接矩阵中非零元素有( C )个。

A)n B)2e C)e D) n+e8、已知栈的最大容量为4。

若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的出栈序列为( C )。

A) 5,4,3,2,1,6 B) 2,3,5,6,1,4C) 3,2,5,4,1,6 D) 1,4,6,5,2,39、链式存储的存储结构所占存储空间( A )。

A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针B)只有一部分,存放结点值C)只有一部分,存储表示结点间关系的指针D)分两部分,一部分存放结点值,另一部分存放结点所占单元数10、若采用邻接矩阵法存储一个n个顶点的无向图,则该邻接矩阵是一个( D )。

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

1、串的逻辑结构与( D )的逻辑结构不相同。

A)线性表 B)栈
C)队列 D)集合
2、二叉树第i(i≥1)层上至多有( C )结点。

A)2i B)2i C)2i-1 D)2i-1
3、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元素,其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。

A)13 B)33 C)18 D)40
4、广义表A=(A,B,(C,D),(E,(F,G))),则head(tail(head(tail(tail(A)))))=( D )。

A) (G) B) (D) C) C D) D
5、( C )在进行插入操作时,常产生假溢出现象。

A)顺序栈 B)循环队列
C)顺序队列 D)链队列
6、已知栈的最大容量为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
7、与无向图相关的术语有( C )。

A)强连通图 B)入度
C)路径 D)弧
8、线索二叉树中某结点D,没有左孩子的条件是( B )。

A)D->Lchild=Null B) D->ltag=1
C) D->Rchild=Null D) D->ltag=0
9、栈进行插入和删除操作的特点是( A )。

A)LIFO B)FIFO
C)FCFS D)HPF
10、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。

A)顺序表示法 B)单字符为结点的单链表表示法
C)等量分块表示法 D)不等量分块表示法
11、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶指针,当做出栈处理时,top变化为( C )。

A)top不变 B)top=0 C)top-- D)top++
12、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元
素,其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。

A)13 B)33 C)18 D)40
13、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。

A)顺序表示法 B)单字符为结点的单链表表示法
C)等量分块表示法 D)不等量分块表示法
14、线索二叉树中某结点D,没有左孩子的条件是( B )。

A)D->Lchild=Null B) D->ltag=1
C) D->Rchild=Null D) D->ltag=0。

相关文档
最新文档