全国自学考试数据结构试题02331试题及答案
数据结构(代码02331)2010年10月试题及答案
全国2010年10月高等教育自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.数据的四种存储结构是( ) A-P3A.顺序存储结构、链接存储结构、索引存储结构和散列存储结构B.线性存储结构、非线性存储结构、树型存储结构和图型存储结构C.集合存储结构、一对一存储结构、一对多存储结构和多对多存储结构D.顺序存储结构、树型存储结构、图型存储结构和散列存储结构2.若对某线性表最常用的操作是在最后一个结点之后插入一个新结点或删除最后一个结点,要使操作时间最少,下列选项中,应选择的存储结构是( ) D-P26(带尾指针)A.无头结点的单向链表B.带头结点的单向链表C.带头结点的双循环链表D.带头结点的单循环链表3.若带头结点的单链表的头指针为head,则判断链表是否为空的条件是( )C P22A.head=NULLB.head->next=NULLC.head!=NULLD.head->next!=head4.若元素的入栈顺序为1,2,3....,n,如果第2个出栈的元素是n,则输出的第i(1<=i<=n)个元素是( )DA.n-iB.n-i+lC.n-i+2D.无法确定5.串匹配算法的本质是( ) C P55A.串复制B.串比较C.子串定位D.子串链接6.设有一个10阶的对称矩阵A,采用行优先压缩存储方式,a11为第一个元素,其存储地址为1,每个元素占一个字节空间,则a85的地址为( ) C P61A.13B.18C.33D.407.若一棵二叉树的前序遍历序列与后序遍历序列相同,则该二叉树可能的形状是( ) BA.树中没有度为2的结点B.树中只有一个根结点C.树中非叶结点均只有左子树D.树中非叶结点均只有右子树8.若根结点的层数为1,则具有n个结点的二叉树的最大高度是( ) AA.nB.C. +1D.n/29.在图G中求两个结点之间的最短路径可以采用的算法是( )A P123A.迪杰斯特拉(Dijkstra)算法B.克鲁斯卡尔(Kruskal)算法C.普里姆(Prim)算法D.广度优先遍历(BFS)算法10.下图G=(V,E)是一个带权连通图,G 的最小生成树的权为( )D P116 A.15 B.16 C.17 D.1811.在下图中,从顶点1出发进行深度优先遍历可得到的序列是( ) B P108 A.1 2 3 4 5 6 7B.1 4 2 6 3 7 5C.1 4 2 5 3 6 7D.1 2 4 6 5 3 712.如果在排序过程中不改变关键字相同元素的相对位置,则认为该排序方法是( ) B P136 A.不稳定的 B.稳定的 C.基于交换的D.基于选择的13.设有一组关键字(19, 14, 23, 1,6,20, 4,27, 5,11, 10, 9),用散列函数H(key)=key%13构造散列表,用拉链法解决冲突,散列地址为1的链中记录个数为( ) C P198 A.1 B.2 C.3D.414.已知二叉树结点关键字类型为字符,下列二叉树中符合二叉排序树性质的是( ) D P17415.若需高效地查询多关键字文件,可以采用的文件组织方式为( ) D P218A.顺序文件B.索引文件C.散列文件D.倒排文件二、填空题(本大题共10小题,每小题2分,共20分)请每小题的空格中填上正确答案。
02331 - 2016年04月 - 数据结构试题及答案
2016年4月高等教育自学考试全国统一命题考试数据结构试卷(课程代码02331)注意事项:1.本试卷分为两部分,第一部分为选择题,第二部分为非选择题。
2.应考者必须按试题顺序在答题卡(纸)指定位置上作答,答在试卷上无效。
3.涂写部分、画图部分必须使用2B铅笔书写部分必须使用黑色字迹签字笔。
第一部分选择题一、单项选择题(本大题共15小题,每小题2分,共30分)1.下列选项中,属于非线性数据结构的是()A.队列B.栈C.二叉排序树D.线性表2.瑞士计算机科学家沃思教授曾指出:算法+数据结构=程序.这里的数据结构指的是()A.数据的逻辑结构和存储结构B.数据的线性结构和非线性结构C.数据的紧凑结构和非紧凑结构D.数据的顺序结构和链式结构3.线性表顺序存储时,逻辑上相邻的两个数据元素,其存储地址()A.一定相邻B.一定不相邻C.不一定相邻D.可能不相邻4.数据元素1,2,3,4,5依次入栈,则不可能得到的出栈序列是()A.4,5,3,2,1 B.1,2,3,4,5C.4,3,5,1,2 D.5,4,3,2,15.设顺序表首元素A[0]的存储地址是4000,每个数据元素占5个存储单元,则元素A[20]的起始存储地址是()A.4005 B.4020 C.4100 D.41056.广义表 A=(a,(b,c,(e,f))),函数 head(head(tail(A)))的运算结果是()A.a B.b C.c D.e7.设高度为h的二叉树中,只有度为0和2的结点,则此类二叉树包含的结点数至少是()A.2h B.2h-1 C.2h+1 D.h+18.—棵非空二叉树T的前序遍历和后序遍历序列正好相反,则T一定满足()A.所有结点均无左孩子B.所有结点均无右孩子C.只有一个叶子结点D.是一棵满二叉树9.设图的邻接矩阵A如下所示。
各顶点的度依次是()A.1,2,1,2 B.2,2,1,1 C.3,4,2,3 D.4,4,2,21O.无向图G如题10图所示,从顶点a开始进行深度优先遍历,下列遍历序列中,正确的是()A.a,b,e,c,d,f B.a,c,f,e,d,bC.a,c,b,e,f,d D.a,e,d,f,c,b11.设带权连通图G中含有n(n>1)个顶点,下列关于G的最小生成树T的叙述中,正确的是()A.T中可能含有回路B.T中含有图G的所有边C.T是唯一的,且含有n-1条边D.T可能不唯一,但权一定相等12.若要求对序列进行稳定的排序,则在下列选项中应选择()A.希尔排序B.快速排序C.直接插入排序D.直接选择排序13.下列排序算法中,空间复杂度最差的是()A.归并排序B.希尔排序C.冒泡排序D.堆排序14.下列排序算法中,初始数据有序时,花费的时间反而更多的算法是()A.插入排序B.冒泡排序C.快速排序D.希尔排序15.对线性表L进行二分查找时,要求L必须满足()A.以顺序方式存储B.以顺序方式存储,且数据元素有序C.以链接方式存储D.以链接方式存储,且数据元素有序第二部分非选择题二、填空题(本大题共10小题,每小题2分,共20分)16.下面程序段的时间复杂度是_________。
最新1月自学考试数据结构试题及答案解析
2018年1月自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列程序段的时间复杂度为( )s=0;for(i=1;i<n;i++)for(j=1;j<n;j++)s+=i*j;A.O(1)B.O(n)C.O(2n)D.O(n2)2.假设某个带头结点的单链表的头指针为head,则判定该表为空表的条件是( )A.head==NULL;B.head->next==NULL;C.head!=NULL;D.head->next==head;3.栈是一种操作受限的线性结构,其操作的主要特征是( )A.先进先出B.后进先出C.进优于出D.出优于进4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front和rear。
若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( ) A.(rear-front-1)%n B.(rear-front)%nC.(front-rear+1)%nD.(rear-front+n)%n5.判断两个串大小的基本准则是( )A.两个串长度的大小B.两个串中首字符的大小C.两个串中大写字母的多少D.对应的第一个不等字符的大小6.二维数组A[4][5]按行优先顺序存储,若每个元素占2个存储单元,且第一个元素A[0][0]的存储地1址为1000,则数组元素A[3][2]的存储地址为( )A.1012B.1017C.1034D.10367.高度为5的完全二叉树中含有的结点数至少为( )A.16B.17C.31D.328.已知在一棵度为3的树中,度为2的结点数为4,度为3的结点数为3,则该树中的叶子结点数为( )A.5B.8C.11D.18)9.下列所示各图中是中序线索化二叉树的是(A.(v0,v1,v2,v5,v4,v3)B.(v0,v1,v2,v3,v4,v5)C.(v0,v1,v5,v2,v3,v4)D.(v0,v1,v4,v5,v2,v3)11.如图所示有向图的一个拓扑序列是( )A.ABCDEFB.FCBEADC.FEDCBAD.DAEBCF12.下列关键字序列中,构成大根堆的是( )23A.5,8,1,3,9,6,2,7B.9,8,1,7,5,6,2,33C.9,8,6,3,5,l ,2,7D.9,8,6,7,5,1,2,313.对长度为15的有序顺序表进行二分查找,在各记录的查找概率均相等的情况下,查找成功时所需进行的关键字比较次数的平均值为( ) A.1539B.1549C.1551D.155514.已知一个散列表如图所示,其散列函数为H(key)=key %11,采用二次探查法处理冲突,则下一个插入的关键字49的地址为( )15.数据库文件是由大量带有结构的( )A.记录组成的集合B.字符组成的集合C.数据项组成的集合D.数据结构组成的集合二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
全国2021年10月数据结构试题及答案
全国2021年10月数据结构试题及答案课程代码:02331第一部份选择题(30分)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.算法指的是()A.计算机程序 B.解决问题的计算方式C.排序算法 D.解决问题的有限运算序列2.线性表采用链式存储时,结点的存储地址()A.必需是不持续的B.持续与否都可C.必需是持续的D.和头结点的存储地址相持续3.将长度为n的单链表链接在长度为m的单链表以后的算法的时间复杂度为() A.O(1) B.O(n) C.O(m) D.O(m+n)4.由两个栈共享一个向量空间的益处是:()A.减少存取时间,降低下溢发生的机率B.节省存储空间,降低上溢发生的机率C.减少存取时间,降低上溢发生的机率D.节省存储空间,降低下溢发生的机率5.设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作后其头指针front值为()A.front=front+1 B.front=(front+1)%(m-1)C.front=(front-1)%m D.front=(front+1)%m6.如下陈述中正确的是()A.串是一种特殊的线性表 B.串的长度必需大于零C.串中元素只能是字母 D.空串就是空白串7.若目标串的长度为n,模式串的长度为[n/3],则执行模式匹配算法时,在最坏情况下的时间复杂度是()A.O() B.O(n) C.O(n2) D.O(n3)8.一个非空广义表的表头()A.不可能是子表 B.只能是子表C.只能是原子 D.可以是子表或原子9.假设以带行表的三元组表表示稀疏矩阵,则和下列行表0 2 3 3 5对应的稀疏矩阵是()10.在一棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为( )A.4 B.5 C.6 D.711.在含n个极点和e条边的无向图的邻接矩阵中,零元素的个数为( )A.e B.2e C.n2-e D.n2-2e12.假设一个有n个极点和e条弧的有向图用邻接表表示,则删除与某个极点vi相关的所有弧的时间复杂度是( )A.O(n) B.O(e) C.O(n+e) D.O(n*e)13.用某种排序方式对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的转变情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方式是()A.选择排序 B.希尔排序 C.归并排序 D.快速排序14.适于对动态查找表进行高效率查找的组织结构是()A.有序表 B.分块有序表 C.三叉排序树 D.线性链表15.不定长文件是指()A.文件的长度不固定 B.记录的长度不固定C.字段的长度不固定 D.关键字项的长度不固定第二部份非选择题(共70分)二、填空题(本大题共10小题,每小题2分,如有两个空格,每一个空格1分,共20分)不写解答进程,将正确的答案写在每小题的空格内。
2004年10月全国自考数据结构(02331)试题及答案
2004年10月全国自考数据结构试题课程代码:(02331)一、单项选择题(本大题共15小题,每小题2分,共30分)1.下列各式中,按增长率由小至大的顺序正确排列的是(D)A.n,n!,2n ,n3/2B.n3/2,2n,n logn,2100C.2n,log n,n logn,n3/2D.2100,logn, 2n, n n2.若要在单链表中的结点*p之后插入一个结点*s,则应执行的语句是(A)A.s->next=p->next; p->next=s; B.p->next=s; s->next=p->next; C.p->next=s->next; s->next=p; D.s->next=p; p->next=s->next; 3.若要在O(1)的时间复杂度上实现两个循环链表头尾相接,则应对两个循环链表各设置一个指针,分别指向(B)A.各自的头结点B.各自的尾结点C.各自的第一个元素结点D.一个表的头结点,另一个表的尾结点4.栈的两种常用存储结构分别为(A)A.顺序存储结构和链式存储结构B.顺序存储结构和散列存储结构C.链式存储结构和索引存储结构D.链式存储结构和散列存储结构5.已知循环队列的存储空间为数组data[21],且当前队列的头指针和尾指针的值分别为8和3,则该队列的当前长度为(C)A.5 B.6 C.16 D.176.已知在如下定义的链串结点中,每个字符占1个字节,指针占4个字节,则该链串的存储密度为(C)typedef struct node{char data[8];struct node *next;}LinkStrNode;A.1/4 B.1/2 C.2/3 D.3/47.应用简单的匹配算法对主串s=″BDBABDABDAB″与子串t=″BDA″进行模式匹配,在匹配成功时,进行的字符比较总次数为(C)A.7 B.9 C.10 D.128.二维数组A[20][10]采用列优先的存储方法,若每个元素占2个存储单元,且第1个元素的首地址为200,则元素A[8][9]的存储地址为(B)A.574 B.576 C.578 D.5809.对广义表L=((a,b),c,d)进行操作tail(head(L))的结果是(D)1 / 7A.(c,d)B.(d) C.b D.(b)10.已知一棵树的前序序列为ABCDEF,后序序列为CEDFBA,则对该树进行层次遍历得到的序列为(D)A.ABCDEF B.ABCEFD C.ABFCDE D.ABCDFE11.一个含n个顶点和e条弧的有向图以邻接矩阵表示法为存储结构,则计算该有向图中某个顶点出度的时间复杂度为(A)A.O(n) B.O(e) C.O(n+e) D.O(n2)12.在关键字序列(12,23,34,45,56,67,78,89,91)中二分查找关键字为45、89和12的结点时,所需进行的比较次数分别为(B)A.4,4,3 B.4,3,3C.3,4,4 D.3,3,413.下列排序方法中,最好与最坏时间复杂度不相同的排序方法是(A)A.冒泡排序B.直接选择排序C.堆排序D.归并排序14.已知含10个结点的二叉排序树是一棵完全二叉树,则该二叉排序树在等概率情况下查找成功的平均查找长度等于(B)A.1.0 B.2.9C.3.4 D.5.515.在下列各种文件中,不能进行顺序查找的文件是(C)A.顺序文件B.索引文件C.散列文件D.多重表文件二、填空题(本大题共10小题,每小题2分,共20分)16.抽象数据类型是指数据逻辑结构及与之相关的(操作)。
023311804数据结构
2018年4月高等教育自学考试全国统一命题考试数据结构(课程代码02331)一、单项选择题:本大题共15小题,每小题2分,共30分。
在每小题列出的备选项中只有一项是最符合题目要求的,请将其选出。
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.二维数组M,行下标取值范围为0-8,列下标取值范围为1-10,若按行优先存储时,元素M[8][5]的存储地址为ar,则按列优先存储时,地址ar存储的数组元素应是A. M[8][5]B. M[5][8]C. M[3][10]D. M[0][9]7.根据二叉树的定义,3个结点构成的二叉树的树型有A. 2种B. 3种C. 4种D. 5种8.一棵有序树可转换为一棵二叉树,树的后序遍历对应二叉树的A.前序遍历B.中序遍历C.后序遍历D.以上都不对9.若图G的邻接表中有奇数个表结点,则G是A.含奇数个顶点的图B.无向图C.含偶数个顶点的图D.有向图10.若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,则关于该图拓扑排序序列的结论是A.存在,且唯一B.存在,且不唯一C.存在,可能不唯一D.无法确定是否存在11.如果无向图G的最小生成树T中含有边((a, b)和((a, c),则下列选项中,一定不在T中的边是12.下列排序算法中,在每一趟都能选出一个元素放到其最终位置上的是A.插入排序B.希尔排序C.归并排序D.堆排序13.若数据元素序列11, 13, 15, 7, 8, 9, 23, 2, 5是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法是A.冒泡排序B.插入排序C.选择排序D.归并排序14.线性表采用顺序存储或链式存储,对其进行查找的方法应是A.顺序查找B.二分查找C.散列查找D.索引查找15.设有序表为{1, 3, 9, 12, 32, 41, 45, 62, 75, 77, 82},采用二分查找法查找关键字75,查找过程中关键字之间的比较次数是A.1B. 2C. 3D. 4二、填空题:本大题共10小题,每小题2分,共20分。
计算机科学与技术自考本科02331自考数据结构(题库含答案)
02331数据结构一、单选题1.下列程序段的时间复杂度为( D )s=0;for(i=1;i<n ;i++)for(j=1;j<n ;j++)s+=i*j ;A.O(1)B.O(n)C.O(2n)D.O(n 2)2.假设某个带头结点的单链表的头指针为head ,则判定该表为空表的条件是( B )A.head==NULL ;B.head->next==NULL ;C.head!=NULL ;D.head->next==head ;3.栈是一种操作受限的线性结构,其操作的主要特征是( B )A.先进先出B.后进先出C.进优于出D.出优于进4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front 和rear 。
若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( B )A.(rear-front-1)%nB.(rear-front)%nC.(front-rear+1)%nD.(rear-front+n)%n5.判断两个串大小的基本准则是( D )52A.两个串长度的大小B.两个串中首字符的大小C.两个串中大写字母的多少D.对应的第一个不等字符的大小6.二维数组A[4][5]按行优先顺序存储,若每个元素占2个存储单元,且第一个元素A[0][0]的存储地址为1000,则数组元素A[3][2]的存储地址为( C )A.1012B.1017C.1034D.10367.高度为5的完全二叉树中含有的结点数至少为( A )A.16B.17C.31D.328.已知在一棵度为3的树中,度为2的结点数为4,度为3的结点数为3,则该树中的叶子结点数为( C )A.5B.8C.11D.189.下列关键字序列中,构成大根堆的是( D )A.5,8,1,3,9,6,2,7B.9,8,1,7,5,6,2,33C.9,8,6,3,5,l ,2,7D.9,8,6,7,5,1,2,310.对长度为15的有序顺序表进行二分查找,在各记录的查找概率均相等的情况下,查找成功时所需进行的关键字比较次数的平均值为( B )A.1539B.1549C.1551D.155512.估算算法时间复杂度时考虑的问题规模通常是指算法求解问题的 ( A )。
02331数据结构答案
2017年10月高等教育自学考试全国统命题考试数据结构试题答案及评分参考(课程代码02331)一、单项选择题:本大题共I 5小题,每小题2分,共30分。
1.B2.C3.B4.B5.C6.A7.B8.A9.A 10.C ll.D 12.B 13.B 14.D 15.C二、填空题:本大题其1 0小题,每小题2分.共20分。
16.无关(或不同) 17.q->next=p->next18.递归函数 19.((b ,c,d), e f,(g ,h)20.不变 21.有向无环图22.兄弟 23.)(2n O24.装填因子 25.37/12,约为3.08三、解答题:本犬题共4小题,每小题5分,共20分。
【评分说明】本题答案不唯一。
若考生给出的答案正确,同样给分27.(1) ABCEGDF ACEGBDF ADFGBCE (3分)(2) ABCDEFG ADCBFEG (2分)【评分说明】本题答案不唯一。
若考生给出的答案正确,同样给分。
28.(1)12,11,10, 01, 19, 14. 23, 27, 55, 20, 84, 79, 68 (3分)(2)4 ,2,1(2分)【评分说明】增量序列答案不唯一。
若考生给出的增量序列是递减序列,且最后一个增量是1.同样给分。
29.(1)agebfde (或其他等价答案) (4分)(2)4个 (1分)四、算法阅读题:本大题共4小题,每小题5分,共202分。
30.(1)SL1->data中的数据是{25,4,256,15,29,47,128,256,64},SL2->data 中的数据是{22,4,-63,9,-38,34.42,3}(4分)(2)该算法比较两十线性表中相同下标位置的两个元素,较大者放到较长的线性表中,较小者放到较短的线性表中。
(1分)31.(1) ACCABB (3分)(2) O(n),其中n是二叉树中所含结点个数。
(2分)32(1)j>i,j-- (2分)(2)j=1+1;j<n-i-l (2分)(3)i++ (1分)33.(1) 15 16 18 20 30 40 (3分)(2)查找二叉排序树T中所有满足kl≤key≤k2的元素,井按升序输出。
全国2021年4月自考02331《数据结构》真题
C.3,5.1,2, 4
D. 5,3,1,2,4
12. 下列排序方法中,不是稳定排序方法的是
A.直接插入排序
B. 冒泡排序
C.归并排序
D.快速排序
13. 已知数据序列(18, 19, 20,4,51,6, 30, 1.2) 是某种排序算法第二趟排序后得到的结果,则该算法可能是
A.239
B.240
C.247
D.248
7.一棵完全二叉树T的全部k个叶结点都在同一层中,每个分支结点都有两个孩子结点。T中包含的结点数是
A.1,2,3,4,5
B. 2.3,5,4, 1
C.3,5,1,2,4
D. 4,3,5, 1,2
11.对题10-11图进行拓扑排序,下列选项中,正确的拓扑序列是
A.1,2,3, 4,5
一、单项选择题:本大题共15小题,每小题2分,共30分。在每小题列出的备选项中只有一项是最符合题目要求的,请将其选出。
1.下列选项中,不属于线性结构的是
A.线性表
B.双向链表
C.循环队列
D.二叉树
2.某线性表L含有n个元素,采用单循环链表保存,仅有尾指针指向链表的终端结点。在最后一个结点之后插入一个结点及蒯除第一 个结点的时间复杂度分别是
A. 10,8,9,6, 12,11, 13
B. 10,6,8,9, 12.11,13
C. 10,12, II, 13,8,6, 9
D.10,8,6,9,12, 13, I1
第二部分非选择题
二、填空题:本大题共10小题, 每小题2分,共20分。
16.数据的运算,即对数据元素施加的操作,是定义在数据的___________结构上的。
02331 数据结构 答案
绝密★启用前2018年4月高等教育自学考试全国统一命题考试数据结构试题答案(课程代码02331)一、单项选择题:本大题共15小题,每小题2分,共30分。
1.A 2.B 3.C 4.D 5.D6.C 7.D 8.B 9.D 10.C11.A 12.D 13.B 14.A 15.B二、填空题:本大题共10小题,每小题2分,共20分。
16.非线性结构17.头结点18. 320 19.(( ))20.2h-1 21.生成树22. 16 23.长度24. 32,36,l8,13,36,45,76,97,49,53 25.基数排序三、解答题:本大题共4小题,每小题5分,共20分。
26.答案:(1)判断栈满int stackfull( SeqStack *s){ return s->topl+1 == s->top2;}(2)进栈void push(SeqStack*s, int si, DataTypex){ if ( stackfull( s))printf( "satck overflow");else{ if (si==0)s->data[ ++s->topl] = x;else s->data[ --s->top2] = x;}}27.答案:①C ②H ③D ④E ⑤H ⑥D ⑦B ⑧E ⑨G ⑩A28.答案:(1)是有向无环图。
(2)该图的拓扑排序序列有:(1,2,5,4,7,3,6)和(1,2,5,4,3,7,6)29.答案:(1)散列表是(2) ASL查找成功=12/8 =1.5四、算法阅读题:本大题共4小题,每小题5分,共20分。
30.答案:(1) Q->rear==Q->front(2) (Q->rear+l)%QueueSize(3) (Q->front+l)%QueueSize31.答案(1)*a(2)k ++(3) k32.答案:输出结果:7,3,9,6,1,5,2,8,433.答案:输出结果:62,32,21,23,25,5,10,1,20,9五、算法设计题:本题10分。
自考数据结构02331历年试题与答案(2009__2015个人整理版)
自考数据结构02331历年试题及答案(2009--2015个人整理版)全国2009年1月自学考试数据结构试题一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列程序段的时间复杂度为( )9s=0;for(i=1;i<n;i++)for(j=1;j<n;j++)s+=i*j;A.O(1)B.O(n)C.O(2n)D.O(n2)2.假设某个带头结点的单链表的头指针为head,则判定该表为空表的条件是( )22A.head==NULL;B.head->next==NULL;C.head!=NULL;D.head->next==head;3.栈是一种操作受限的线性结构,其操作的主要特征是( )32A.先进先出B.后进先出C.进优于出D.出优于进4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front和rear。
若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( )A.(rear-front-1)%nB.(rear-front)%nC.(front-rear+1)%nD.(rear-front+n)%n5.判断两个串大小的基本准则是( )52A.两个串长度的大小B.两个串中首字符的大小C.两个串中大写字母的多少D.对应的第一个不等字符的大小6.二维数组A[4][5]按行优先顺序存储,若每个元素占2个存储单元,且第一个元素A[0][0]的存储地址为1000,则数组元素A[3][2]的存储地址为( )60A.1012B.1017C.1034D.10367.高度为5的完全二叉树中含有的结点数至少为( )72A.16B.17C.31D.328.已知在一棵度为3的树中,度为2的结点数为4,度为3的结点数为3,则该树中的叶子结点数为( )C.11D.189.下列所示各图中是中序线索化二叉树的是( A )81A10.已知含6个顶点(v 0,v 1,v 2,v 3,v 4,v 5)的无向图的邻接矩阵如图所示,则从顶点v 0出发进行深度优先遍历可能得到的顶点访问序列为( )108 A.(v 0,v 1,v 2,v 5,v 4,v 3) B.(v 0,v 1,v 2,v 3,v 4,v 5) C.(v 0,v 1,v 5,v 2,v 3,v 4) D.(v 0,v 1,v 4,v 5,v 2,v 3)11.如图所示有向图的一个拓扑序列是( ) A.ABCDEF B.FCBEADC.FEDCBAD.DAEBCF12.下列关键字序列中,构成大根堆的是( ) A.5,8,1,3,9,6,2,7 B.9,8,1,7,5,6,2,33 C.9,8,6,3,5,l ,2,7 D.9,8,6,7,5,1,2,313.对长度为15的有序顺序表进行二分查找,在各记录的查找概率均相等的情况下,查找成功时所需进行的关键字比较次数的平均值为( )172 A.1539 B.1549 C.1551 D.1555 14.已知一个散列表如图所示,其散列函数为H(key)=key %11,采用二次探查法处理冲突,则下一个插入的关键字49的地址为( D )d 19715.数据库文件是由大量带有结构的( )206 A.记录组成的集合 B.字符组成的集合 C.数据项组成的集合 D.数据结构组成的集合二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
自考02331数据结构真题及答案(2009-2018)
if ( ! visited[p -> adjvex] )
DFS( G, p - > adjvex) ;
p = p->next;
}
}
}
void f32 ( ALGraph * G) {
int i;
for (i = 0; i < G->n; i ++)
visited [ i ] = FALSE ;
A.先进先出B.后进先出
C.进优于出D.出优于进
4.假设以数组A[n]存放循环队列的元素,其头、尾指针分别为front和rear。若设定尾指针指向队列中的队尾元素,头指针指向队列中队头元素的前一个位置,则当前存于队列中的元素个数为( )
A.(rear-front-1)%nB.(rear-front)%n
(1)(1+8)*8/2=36 存放次对角线以上的零为37
(2)12
27.对关键字序列(5,8,1,3,9,6,2,7)按从小到大进行快速排序。
(1)写出排序过程中前两趟的划分结果;
(2)快速排序是否是稳定的排序方法?
(1)
第一趟划分结果;(2,3,1),5,(9,6,8,7)
第二趟划分结果;(1,2,3),5,(9,6,8,7)
if ((2)) {R[k].key<R[k-l].key
t = R[k];
R[k] = R[k-1];
R[k-1] = t;
}
(3);i++
}
}
(1)
(2)
(3)
五、算法设计题(本大题10分)
34.假设以带头结点的单链表表示线性表,单链表的类型定义如下:
最新全国自考数据结构(02331)试题及答案
全国2012年10月高等教育自学考试数据结构试题课程代码:02331请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分注意事项:1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。
如需改动,用橡皮擦干净后,再选涂其他答案标号。
不能答在试题卷上。
一、单项选择题(本大题共l5小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。
错涂、多涂或未涂均无分。
1.一个算法的时间耗费的数量级称为该算法的A.效率C.可实现性2.顺序表便于A.插入结点C.按值查找结点B.难度D.时间复杂度B.删除结点D.按序号查找结点3.设带头结点的单循环链表的头指针为head,指针变量P指向尾结点的条件是A.p->next->next==head C.p->next->next==NULL B.p->next==head D.p->next==NULL4.设以数组A[0..m-1]存放循环队列,front指向队头元素,rear指向队尾元素的下一个位置,则当前队列中的元素个数为A.(rear-front+m)%m C.(front-rear+m)%m B.rear-front+1 D.(rear-front)%m5.下列关于顺序栈的叙述中,正确的是A.入栈操作需要判断栈满,出栈操作需要判断栈空B.入栈操作不需要判断栈满,出栈操作需要判断栈空C.入栈操作需要判断栈满,出栈操作不需要判断栈空D.入栈操作不需要判断栈满,出栈操作不需要判断栈空12.下列序列不为堆的是 14.分别用以下序列生成二叉排序树,其中三个序列生成的二叉排序树是相同的,不同15.下列关于 m 阶 B 树的叙述中,错误的是6.A 是一个 10×10 的对称矩阵,若采用行优先的下三角压缩存储,第一个元素 a 0,0 的存储地址为 1,每个元素占一 个存储单元,则a 7,5 的地址为 A .25 C .33 7.树的后序遍历等价于该树对应二叉树的 A .层次遍历 C .中序遍历 8.使用二叉线索树的目的是便于 A .二叉树中结点的插入与删除 C .确定二叉树的高度 B .26D .34B .前序遍历D .后序遍历B .在二叉树中查找双亲D .查找一个结点的前趋和后继9.设无向图的顶点个数为 n ,则该图边的数目最多为A .n-l C .n(n+1)/2 10.可进行拓扑排序的图只能是 A .有向图 C .有向无环图 11.下列排序方法中稳定的是 A .直接插入排序 C .堆排序 ..A .75,45,65,30,15,25 C .75,65,30,l5,25,45B .n(n-1)/2D .n 2B .无向图D .无向连通图B .直接选择排序D .快速排序B .75,65,45,30,25,15D .75,45,65,25,30,1513.对线性表进行二分查找时,要求线性表必须是A .顺序存储 C .顺序存储且按关键字有序B .链式存储D .链式存储且按关键字有序.. 的序列是A .(4,1,2,3,5) C .(4,5,2,1,3)B .(4,2,3,l,5)D .(4,2,1,5,3)..A .每个结点至多有 m 个关键字B .每个结点至多有 m 棵子树C .插入关键字时,通过结点分裂使树高增加D .删除关键字时通过结点合并使树高降低 非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国2011年1月自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列选项中与数据存储结构无关的术语是( D )P3A.顺序表B.链表C.链队列D.栈2.将两个各有n个元素的有序表归并成一个有序表,最少的比较次数是( B )A.n-1B.nC.2n-1D.2n3.已知循环队列的存储空间大小为m,队头指针front指向队头元素,队尾指针rear指向队尾元素的下一个位置,则向队列中插入新元素时,修改指针的操作是( D )A.rear=(rear-1)%m;B.front=(front+1)%m;C.front=(front-1)%m;D.rear=(rear+1)%m;4.递归实现或函数调用时,处理参数及返回地址,应采用的数据结构是( A )A.堆栈B.多维数组C.队列D.线性表5.设有两个串p和q,其中q是p的子串,则求q在p中首次出现位置的算法称为( C )A.求子串B.串联接C.串匹配D.求串长6.对于广义表A,若head(A)等于tail(A),则表A为( B )P67A.( )B.(( ))C.(( ),( ))D.(( ),( ),( ))7.若一棵具有n(n>0)个结点的二叉树的先序序列与后序序列正好相反,则该二叉树一定是( C )A.结点均无左孩子的二叉树B.结点均无右孩子的二叉树C.高度为n的二叉树D.存在度为2的结点的二叉树8.若一棵二叉树中度为l的结点个数是3,度为2的结点个数是4,则该二叉树叶子结点的个数是( B )P73A.4B.5C.7D.89.下列叙述中错误的是( C )A.图的遍历是从给定的源点出发对每一个顶点访问且仅访问一次P107B.图的遍历可以采用深度优先遍历和广度优先遍历第 1 页C.图的广度优先遍历只适用于无向图D.图的深度优先遍历是一个递归过程10.已知有向图G=(V,E),其中V={V1,V2,V3,V4},E={<V1,V2>,<V1,V3>,<V2,V3>,<V2,V4>,<V3,V4>},图G的拓扑序列是()A.V1,V2,V3,V4B.V1,V3,V2,V4C.V1,V3,V4,V2D.V1,V2,V4,V311.平均时间复杂度为O(n log n)的稳定排序算法是( C )P136 P164 8-2A.快速排序B.堆排序C.归并排序D.冒泡排序12.已知关键字序列为(51,22,83,46,75,18,68,30),对其进行快速排序,第一趟划分完成后的关键字序列是( D )A.(18,22,30,46,51,68,75,83)B.(30,18,22,46,51,75,83,68)C.(46,30,22,18,51,75,68,83)D.(30,22,18,46,51,75,68,83)13.某索引顺序表共有元素395个,平均分成5块。
若先对索引表采用顺序查找,再对块中元素进行顺序查找,则在等概率情况下,分块查找成功的平均查找长度是( A )A.43B.79C.198D.20014.在含有10个关键字的3阶B-树中进行查找,至多访问的结点个数为( B )即B-树的高度A.2B.3C.4D.515.ISAM文件系统中采用多级索引的目的是( A )P213A.提高检索效率B.提高存储效率C.减少数据的冗余D.方便文件的修改二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
16.数据结构由数据的逻辑结构、存储结构和数据的_运算___________三部分组成。
17.在单链表中某结点后插入一个新结点,需要修改_______2________个结点指针域的值。
18.设栈S的初始状态为空,若元素a、b、c、d、e、f依次进栈,得到的出栈序列是b、d、c、f、e、a,则栈S的容量至少是_______3_________。
19.长度为零的串称为______空串__________。
20.广义表G=(a,b,(c,d,(e,f)),G)的长度为________4________。
21.一棵树T采用孩子兄弟链表存储,如果树T中某个结点为叶子结点,则该结点在二叉链表中所对应的结点一定是______左右指针域均为空__________。
第 2 页22.一个有n个顶点的无向连通图,最少有_____n-1___________条边。
23.当待排关键字序列基本有序时,快速排序、简单选择排序和直接插入排序三种排序方法中,运行效率最高的是_______直接插入排序_________。
24.在一棵深度为h的具有n个结点的二叉排序树中,查找任一结点的最多比较次数是______h________。
25.不定长文件指的是文件的______记录含有的信息长度______大小不固定。
三、解答题(本大题共4小题,每小题5分,共20分)26.已知一棵二叉排序树(结点值大小按字母顺序)的前序遍历序列为EBACDFHG,请回答下列问题:(1)画出此二叉排序树;(2)(3)若将此二叉排序树看作森林的二叉链表存储,请画出对应的森林。
(1)给出该图的邻接矩阵;(2)从结点A出发,写出该图的深度优先遍历序列。
第 3 页28.已知待排记录的关键字序列为{25,96,11,63,57,78,44},请回答下列问题:(1)画出堆排序的初始堆(大根堆);(2)画出第二次重建堆之后的堆。
29.已知关键字序列为(56,23,41,79,38,62,18),用散列函数H(key)=key%11将其散列到散列表HT[0..10]中,采用线性探测法处理冲突。
请回答下列问题:(1)画出散列存储后的散列表:(2)求在等概率情况下查找成功的平均查找长度。
四、算法阅读题(本大题共4小题,每小题5分,共20分)30.阅读下列程序。
void f30(int A[],int n){int i,j,m;for (i=1;i<n;i++)for (j=0;j<i;j++){m=A[i*n+j];A[i*n+j]=A[j*n+i];A[j*n+i]=m;}}回答下列问题:第 4 页第 5 页(1)已知矩阵B=⎪⎪⎪⎭⎫ ⎝⎛9 8 7 6 5 4 3 2 1 ,将其按行优先存于一维数组A 中,给出执行函数调用f30(A ,3)后矩阵B 的值;(2)简述函数f30的功能。
31.假设以二叉链表表示二叉树,其类型定义如下:typedef struct node {char data;struct node*Ichild, *rchild; ∥左右孩子指针} *BinTree ;阅读下列程序。
void f31(BinTree T){InitStack(S); ∥ 初始化一个堆栈Swhile (T || !StackEmpty(S){while (T){Push(S,T); T=T->lchild;}if (!StackEmpty(S)){T=Pop(S); printf(“%c ”,T->data); T=T->rchild;}}}回答下列问题:(1)已知以T 为根指针的二叉树如图所示,请写出执行f31(T)的输出结果:(2)简述算法f31的功能。
32.阅读下列程序。
void f32(int A[],int n){int i,j,m=l,t;for (i=0; i<n-l&&m; i++){for (j=0;j<n;j++)printf(“%d ”,A[j]);printf(“\n”);m=0:for (j=1; j<n-i; j++)if (A[j-1]>A[j]){t=A[j-l];A[j-1]=A[j];A[j]=t;m=1;}}}回答问题:已知整型数组A[ ]={34,26,15,89,42},写出执行函数调用f32(A,5)后的输出结果。
33.已知顺序表的表结构定义如下:#define MAXLEN 100typedef int KeyType;第 6 页typedef struct {KeyType key;InfoType otherinfo;} NodeType;typedef NodeType SqList[MAXLEN];阅读下列程序。
Int f33(SqList R,NodeType X, int p, int q){ int m;if (p>q) return -1;m=(p+q)/2;if (R[m].key==X.key) return m;if (R[m].key>X.key) return f33(R,X,p,m-l);else return f33(R,X,m+l,q);}请回答下列问题:(1)若有序的顺序表R的关键字序列为(2,5,13,26,55,80,105),分别写出X.key=18和X.key=26时,执行函数调用f33(R,X,0,6)的函数返回值。
(2)简述算法f33的功能。
五、算法设计题(本题10分)34.假设用带头结点的单循环链表表示线性表,单链表的类型定义如下:typedef struct node {int data;struct node*next;}LinkNode,*LinkList;编写程序,求头指针为head的单循环链表中data域值为正整数的结点个数占结点总数的比例,若为空表输出0,并给出所写算法的时间复杂度。
函数原型为:float f34(LinkList head):第 7 页全国2010年10月自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.数据的四种存储结构是( A )A.顺序存储结构、链接存储结构、索引存储结构和散列存储结构B.线性存储结构、非线性存储结构、树型存储结构和图型存储结构C.集合存储结构、一对一存储结构、一对多存储结构和多对多存储结构D.顺序存储结构、树型存储结构、图型存储结构和散列存储结构2.若对某线性表最常用的操作是在最后一个结点之后插入一个新结点或删除最后一个结点,要使操作时间最少,下列选项中,应选择的存储结构是( C )A.无头结点的单向链表O(N)B.带头结点的单向链表O(N)C.带头结点的双循环链表O(1)D.带头结点的单循环链表O(N)3.若带头结点的单链表的头指针为head,则判断链表是否为空的条件是( B )A.head=NULLB.head->next=NULL第 8 页第 9 页 C.head!=NULL D.head->next!=head4.若元素的入栈顺序为1,2,3....,n ,如果第2个出栈的元素是n ,则输出的第i(1<=i<=n)个元素是( D )A.n-iB.n-i+lC.n-i+2D.无法确定5.串匹配算法的本质是( C )A.串复制B.串比较C.子串定位D.子串链接 6.设有一个10阶的对称矩阵A ,采用行优先压缩存储方式,a 11为第一个元素,其存储地址为1,每个元素占一个字节空间,则a 85的地址为( C )A.13B.18C.33D.407.若一棵二叉树的前序遍历序列与后序遍历序列相同,则该二叉树可能的形状是(B ) A.树中没有度为2的结点 B.树中只有一个根结点C.树中非叶结点均只有左子树D.树中非叶结点均只有右子树8.若根结点的层数为1,则具有n 个结点的二叉树的最大高度是( A )A.nB.C. +1 (完全二叉树)D.n/29.在图G 中求两个结点之间的最短路径可以采用的算法是( A )A.迪杰斯特拉(Dijkstra )算法B.克鲁斯卡尔(Kruskal )算法C.普里姆(Prim)算法D.广度优先遍历(BFS)算法(BC 为求最小生成树)10.下图G=(V,E)是一个带权连通图,G 的最小生成树的权为( D )A.15B.16C.17D.1811.在下图中,从顶点1出发进行深度优先遍历可得到的序列是( B )A.1 2 3 4 5 6 7B.1 4 2 6 3 7 5C.1 4 2 5 3 6 7D.1 2 4 6 5 3 712.如果在排序过程中不改变关键字相同元素的相对位置,则认为该排序方法是( B )A.不稳定的B.稳定的C.基于交换的D.基于选择的13.设有一组关键字(19, 14, 23, 1,6,20, 4,27, 5,11, 10, 9),用散列函数H(key)=key%13构造散列表,用拉链法解决冲突,散列地址为1的链中记录个数为( C )A.1B.2C.3D.414.已知二叉树结点关键字类型为字符,下列二叉树中符合二叉排序树性质的是( D)15.若需高效地查询多关键字文件,可以采用的文件组织方式为( D )A.顺序文件B.索引文件C.散列文件D.倒排文件二、填空题(本大题共10小题,每小题2分,共20分)请每小题的空格中填上正确答案。