厦门理工学院12级数据结构期末试卷与答案(共15页)_第1页
厦门理工学院12级数据结构期末试卷与答案(共15页)_第2页
厦门理工学院12级数据结构期末试卷与答案(共15页)_第3页
厦门理工学院12级数据结构期末试卷与答案(共15页)_第4页
厦门理工学院12级数据结构期末试卷与答案(共15页)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上考 生 信 息 栏 系 专业 级 班级 姓名 学号 装 订 线厦门理工学院试卷20122013学年 第 一 学期课程名称数据结构与算法试卷卷别 A B 专业 2011 级 班级 考试方式闭卷 开卷 本试卷共 四 大题(4页),满分100分,考试时间120分钟。请在答题纸上作答,在试卷上作答无效。 一、选择题:(本题共20小题,每题2分,共40分)1、链式存储的存储结构所占存储空间( )。 A 分两部分,一部分存放结点的值,另一部分存放表示结点间关系的指针 B 只有一部分,存放结点的值 C 只有一部分,存储表示结点间关系的指针 D 分两部分,一部分存放结点的值,另一部分

2、存放结点所占单元素2、已知一个顺序存储的线性表,设每个结点占m个存储单元,若第一个结点的地址为B,则第i个结点的地址为( )。A B+(i-1)*m BB+i*m C B-i*m D B+(i+1)*m3、两个指针P和Q,分别指向单链表的两个元素,P所指元素是Q所指元素前驱的条件是( )。AP->next=Q->next BP->next= Q CQ->next= P DP=Q4、下面关于线性表的叙述中,错误的是( )关系。A顺序表必须占一片地址连续的存储单元 B顺序表可以随机存取任一元素C链表不必占用一片地址连续的存储单元 D链表可以随机存取任一元素5、等概率情况下,

3、在有n个结点的顺序表上做插入结点运算,需平均移动结点的数目为( )。AnB(n-1)/2 C n/2 D(n+1)/26、设数组datam作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为( )。 Afront=front+1 Bfront=(front+1)%(m-1) Cfront=(front-1)%m Dfront=(front+1)%m7、下列算法的时间复杂度是( )。 for (i=0;i<n;i+) for (j=0;j<n;j+) cij=i+j; A. O(1) B. O( n) C. O(log2n) D

4、. O(n2)8、从一个栈顶指针为top的链栈中删除一个结点时,用x保存被删除的结点的值,应执行下列 ( )命令。 Ax=top; top=top->next; Btop=top->next; x=top->data; Cx=top->data; Dx=top->data; top=top->next;9、经过下列栈的运算后,x的值是( )。 InitStack(s) (初始化栈);Push(s, a);Push(s, b);ReadTop(s);Pop(s, x);Aa Bb C1 D010、一个栈的入栈次序ABCDE,则栈的不可能的输出序列是 ( )。

5、AEDCBA BDECBA CDCEAB DABCDE11、设某棵二叉树中有2000个站点,则该二叉树的最小高度为( )。 A、9 B、10 C、11 D、1212、若用一个大小为6的数组来实现循环队列,且当前front和rear的值分别为3和0,当从队列中删除一个元素,再加入两个元素后,front和rear的值分别为( )。 A5和1 B4和2 C2和4 D1和513、根据二叉树的定义,具有3个结点的二叉树有( )种树型。 A3 B4 C5 D614、如右图所示的二叉树,后序遍历的序列是( )ABADECFGHI A A、B、C、D、E、F、G 、H、I B A、B、D、H、I、E、C、F、

6、G C H、D、I、B、E、A、F、C、G D H、I、D、E、B、F、G、C、A15、下列陈述正确的是( )。A二叉树是度为2的有序树B二叉树中结点只有一个孩子时无左右之分C二叉树中必有度为2的结点 D二叉树中最多只有两棵子树,且有左右子树之分16、在有n个叶子结点的哈夫曼树中,非叶子结点的总数是( )。n-1 n 2n-1 2n17、对于一个具有n个顶点的有向图的边数最多有( )。 An Bn(n-1) Cn(n-1)/2 D2n18、对于一个具有n个顶点和e条边的无向图,采用邻接表表示,则表头向量大小为( )。 An-1Bn+1 Cn Dn+e19、下面关于图的存储结构的叙述中正确的是(

7、 )。A 用邻接矩阵存储图,占用空间大小只与图中顶点数有关,而与边数无关B 用邻接矩阵存储图,占用空间大小只与图中边数有关,而与顶点数无关 C 用邻接表存储图,占用空间大小只与图中顶点数有关,而与边数无关 D 用邻接表存储图,占用空间大小只与图中边数有关,而与顶点数无关20、二叉树为二叉排序树的( )条件是其任一结点的值均大于其左孩子的值,小于其右孩子的值。A充分不必要 B必要不充分 C充分必要 D既不充分也不必要二、分析运算题(本题共6小题,每题5分,共30分)1、如果输入序列为1 2 3,先进入栈结构后进入队列结构,试写出所有的出队列序列。2、 假设一棵二叉树的前序(先序)遍历序列为ABD

8、ECF和中序序列为DBEAFC,画出二叉树并写出后序遍历序列。 图 1 图 2 图33、用二叉树表示算术表达式如图1所示。 按图画出对应的算术表达式 写出后序(后缀)表达式4、请写出有向图2中顶点1-6的入度和出度。5、给定一组项及其权值,假定项都存放于二叉树的树叶结点,则具有最小带权外部路径长度的树称为huffman(赫夫曼) 树。给定项及相应的权如下表:画出相应的huffman树。序号 1 2 3 4 5 6 7 8 9项 A B C D E F G H I权值15 6 71225 4 6 1156、 已经邻接矩阵如图3所示,判断该图是有向图还是无向图,用顶点1-6画出该图。三、程序填空题

9、(本题共5空,每空2分,共10分)1、下面程序段的功能是在单链表中查找元素数据x,若找到,返回指向该结点的指针;否则返回空指针,请在下划线处填上正确的内容。 / 在单链表L中查找元素xtypedef struct LNode DataType data; struct LNode *next; LNode, *LinkList;LinkList Find ( LinkList L, DataType x ) p = L->next; / L为带头节点的单链表 while ( (1) ) if ( p->data = = x ) return p; / 找到x (2) return

10、NULL; / 未找到2、下面程序段的功能实现删除队列中的队头数据(若队列不空),并用x返回其值,要求在下划线处填上正确的语句。typedef struct QNode DataType data; struct QNode *next; QNode, *QueuePtr;typedef struct LQ QueuePtr front; QueuePtr rear;LinkQueue;int DeQueue ( LinkQueue &Q, DataType &x ) if ( (3) ) return ERROR;p= Q.front->next;x=p->dat

11、a; (4) if (Q.rear= =p) (5) free(p); return OK;线 订 装考 生 信 息 栏 系 专业 级 班级 姓名 学号 装 订 线四、算法设计题(本题共2小题,共20分)1、(10分)已知一个顺序表,每个元素都是整数,试设计用最少时间把所有值为负数的元素移动到全部正数值元素前面的算法。typedef struct int *elem; int length ; int listSize; sqlist;2、(10分)以二叉链表为存储结构,编写计算二叉树中叶子结点数目的递归函数。typedef struct BiTNode int data; struct Bi

12、TNode *lchild, *rchild;BiTNode,*BiTree;数据结构与算法A卷答案12-13学年第一学期一、选择题:(本题共20小题,每题2分,共40分)1-5:AABDC 6-10:DDDBC 11-15:CBCDD 16-20:ABCAB二、分析运算题(本题共6小题,每题5分,共30 分)(1) 如果输入序列为1 2 3,先进入栈结构后进入队列结构,试写出所有的出队列序列。输出序列1 2 3(1分)输出序列1 3 2(1分)输出序列2 1 3(1分)输出序列2 3 1(1分)输出序列3 2 1(1分)输出序列3 1 2(扣3分)(2) 假设一棵二叉树的前序(先序)遍历序列

13、为ABDECF和中序序列为DBEAFC,画出二叉树并写出后序遍历序列。 (3分)后序遍历:DEBFCA (2分)(3) 用二叉树表示算术表达式如图1所示。 按图画出对应的算术表达式 写出后序(后缀)表达式算术表达式:(a+b+c*(d+e)+f)*(g+h) (2分)后序表达式:ab+cde+*+f+gh+*(3分)(4) 请写出有向图2中顶点1-6的入度和出度1: 入度:3出度:02: 入度:2出度:23: 入度:1出度:24: 入度:1出度:35: 入度:2出度:16: 入度:2出度:3(入度2.5分,出度2.5分)(5) 给定一组项及其权值,假定项都存放于二叉树的树叶结点,则具有最小带权

14、外部路径长度的树称为huffman(赫夫曼) 树。给定项及相应的权如下表:画出相应的huffman树。(5分)9153382825E15I2315A1312D116G7C6B54F1H(6)已经邻接矩阵如图3所示,判断该图是有向图还是无向图,用顶点1-6画出该图。有向图(2分)(3分)三、程序填空题(本题共5空,每空2分,共10分)(1):p!=NULL(2):p = p->next;(3): Q.front= =Q.rear(4): Q.front->next=p->next;(5): Q.rear=Qfront;四、算法设计题(本题共2小题,共20分)1、(10分)算法如下:void move(sqlist L) int i=0,j=L.lenght-1,k; 1分 int temp; while(i<j) 1分 while(L.elemi<=0) i+; 2分while(L.elemj>=0) j-; 2分if(i<j) 1分 temp=L.elemi; L.elemi=L.elemj; L.e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论