全国2010年1月自考数据结构导论考试试题,答案,笔记
全国2009年1月自考数据结构导论考试试题,答案,笔记分析
全国2009年1月高等教育自学考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.数据的不可分割的最小标识单位是( A )A.数据项B.数据记录C.数据元素(数据和运算基本单位)D.数据变量2. 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];上列程序的时间复杂度为( C )A.O(m+n×t)B.O(m+n+t)C.O(m×n×t)D.O(m×t+n)3.若线性表最常用的操作是存取第i个元素及其前趋的值,那么最节省操作时间的存储方式是( B )A.单链表B.双链表C.单循环链表D.顺序表4.设单链表中指针p指向结点A,要删除A之后的结点(若存在),则修改指针的操作为( A )A.p—>next=p—>next—>next(下一个,下一个原则)B.p=p—>nextC.p=p—>next—>nextD.p—>next=p5.向一个栈顶指针为hs的链栈中插入一个*s结点时,应执行的操作为( B )A.hs—>next=s;B.s—>next=hs;hs=s;(下一个,赋值原则)C.s—>next=hs—>next;hs—>next=s;D.s—>next=hs;hs=hs—>next;6.设循环队列的元素存放在一维数组Q[0‥30]中,队列非空时,front指示队头元素的前一个位置,rear指示队尾元素。
全国2010年1月高等教育自学考试数据结构试题及答案
全国2010年1月高等教育自学考试数据结构试题(课程代码:02331)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.若一个算法的时间复杂度用T(n)表示,其中n的含义是()A.问题规模B.语句条数C.循环层数D.函数数量2.具有线性结构的数据结构是()A.树B.图C.栈和队列D.广义表3.将长度为n的单链表连接在长度为m的单链表之后,其算法的时间复杂度为()A.O(1) B.O(m)C.O(n) D.O(m+n)4.在带头结点的双向循环链表中插入一个新结点,需要修改的指针域数量是()A.2个B.3个.C.4个D.6个5.假设以数组A[60]存放循环队列的元素,其头指针是front=47,当前队列有50个元素,则队列的尾指针值为()A.3 B.37C.50 D.976.若栈采用链式存储结构,则下列说法中正确的是()A.需要判断栈满且需要判断栈空B.不需要判断栈满但需要判断栈空C.需要判断栈满但不需要判断栈空D.不需要判断栈满也不需要判断栈空7.若串str=”Software”,其子串的数目是()A.8 B.9C.36 D.378.设有一个10阶的下三角矩阵A,采用行优先压缩存储方式,a ll为第一个元素,其存储地址为1000,每个元素占一个地址单元,则a85的地址为()A.1012 B.1017C.1032 D.10399.允许结点共享的广义表称为()A.纯表B.线性表C.递归表D.再入表10.下列数据结构中,不属于二叉树的是()A.B树B.AVL树C.二叉排序树D.哈夫曼树11.对下面有向图给出了四种可能的拓扑序列,其中错误..的是()A.1,5,2,6,3,4 B.1,5,6,2,3,4C.5,1,6,3,4,2 D.5,1,2,6,4,312.以v1为起始结点对下图进行深度优先遍历,正确的遍历序列是()A.v1,v2,v3,v4,v5,v6,v7 B.v1,v2,v5,v4,v3,v7,v6C.v1,v2,v3,v4,v7,v5,v6 D.v1,v2,v5,v6,v7,v3,v413.下列排序算法中不稳定的是()A.快速排序B.归并排序C.冒泡排序D.直接插入排序14.一个有序表为(1,3,9,12,32,41,45,62,75,77,82,95,100),当采用折半查找方法查找值32时,查找成功需要的比较次数是()A.2 B.3C.4 D.815.采用ISAM组织文件的方式属于()A.链组织B.顺序组织C.散列组织D.索引组织二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
02142数据结构导论2010年1 月份真题及答案
2010年1月高等教育自学考试全国统一命题考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下述文件中适合于磁带存储的是()A.顺序文件B.索引文件C.散列文件D.多关键字文件2.某二叉树的后根遍历序列为dabec,中根遍历序列为debac,则先根遍历序列为()A.acbedB.becabC.deabcD.cedba3.含有n个结点的二叉树用二叉链表表示时,空指针域个数为( )A.n-1B.nC.n+1D.n+24.在一个图中,所有顶点的度数之和与图的边数的比是( )A.1∶2B.1∶1C.2∶1D.4∶15.长度为n的链队列用单循环链表表示,若只设头指针,则出队操作的时间复杂度为( )A.O(1)B.O(1og2n)C.O(n)D.O(n2)6.下述几种排序方法中,要求内存量最大的是( )A.插入排序B.快速排序C.归并排序D.选择排序7.对n个不同值进行冒泡排序,在元素无序的情况下比较的次数为( )A.n-1B.nC.n+1D.n(n-1)/28.对线性表进行二分查找时,要求线性表必须( )A.以顺序方式存储B.以链式方式存储C.以顺序方式存储,且结点按关键字有序排列D.以链接方式存储,且结点按关键字有序排列9.在表长为n的顺序表上做删除运算,其平均时间复杂度为( )A.O(1)B.O(n)C.O(nlog2n)D.O(n2)10.当利用大小为n的数组顺序存储一个队列时,该队列的最大容量为( )A.n-2B.n-1C.nD.n+111.有关插入排序的叙述,错误的...是( )A.插入排序在最坏情况下需要O(n2)时间B.插入排序在最佳情况可在O(n)时间内完成C.插入排序平均需要O(nlog2n)时间D.插入排序的空间复杂度为O(1)12.有关树的叙述正确的是( )A.每一个内部结点至少有一个兄弟B.每一个叶结点均有父结点C.有的树没有子树D.每个树至少有一个根结点与一个叶结点。
数据结构自考试题及答案
数据结构自考试题及答案一、单项选择题(每题1分,共10分)1. 在数据结构中,从逻辑上可以把数据结构分为()。
A. 动态结构和静态结构B. 线性结构和非线性结构C. 顺序结构和链式结构D. 内部结构和外部结构答案:B2. 线性表的顺序存储结构和链式存储结构相比,它的优点是()。
A. 存储密度大B. 存储密度小C. 插入和删除操作快D. 可以进行随机访问答案:D3. 下列关于栈的描述中,错误的是()。
A. 栈是先进后出(LIFO)的线性表B. 栈允许在一端进行插入和删除操作C. 栈是具有记忆功能的线性表D. 栈的插入和删除操作必须在栈顶进行答案:C4. 在二叉树的遍历过程中,若某结点的左子树为空,则该结点的左孩子直接与()相连。
A. 右孩子B. 右兄弟C. 父节点D. 子节点答案:C5. 哈希表的构造方式是()。
A. 数组B. 树C. 链表D. 图答案:A6. 在图的遍历过程中,深度优先搜索(DFS)和广度优先搜索(BFS)的主要区别在于()。
A. 遍历顺序B. 是否使用栈C. 是否使用队列D. 是否使用递归答案:C7. 快速排序算法的时间复杂度在最坏情况下是()。
A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C8. 以下排序算法中,时间复杂度为O(nlogn)的是()。
A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C9. 在数据库管理系统中,索引的作用是()。
A. 存储数据B. 提高查询效率C. 维护数据完整性D. 实现数据加密答案:B10. 以下不属于查找算法的是()。
A. 顺序查找B. 二分查找C. 哈希查找D. 归并排序答案:D二、填空题(每题2分,共20分)11. 在数据结构中,线性表的顺序存储结构通常使用___________来实现。
答案:数组12. 一个长度为n的顺序表,若在第i个位置插入一个元素(1≤i≤n+1),需要向后移动___________个元素。
2010年1月全国自考数据库系统原理试题(含答案)
全国2010年1月自考数据库系统原理试题课程代码:04735一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的CBDDB ABDDC ACBAD1.数据库管理系统是( )A.采用了数据库技术的计算机系统B.包括DBA、计算机硬件及DB的系统C.位于用户与OS之间的数据管理软件D.包括OS在内的数据管理软件2.外模式DDL用来描述( )A.数据库的总体逻辑结构B.数据库的局部逻辑结构C.数据库的物理存储结构D.数据库的概念结构3.下列关于数据冗余的叙述中,不正确...的是( )A.冗余的存在容易破坏数据库的完整性B.冗余的存在给数据库的维护增加困难C.不应该在数据库中存储任何冗余数据D.冗余数据是指可由基本数据导出的数据4.适当调整DB的模式和内模式,使DB适应新的应用环境称为DB的( )A.重组织B.监控分析C.查询优化D.重构造5.关系模型中将不含有多余属性的超键称为( )A.内键B.候选键C.主键D.外键6.如果一个关系属于3NF,则它( )A.必然属于2NFB.必然属于4NFC.可能不属于2NFD.必然属于BCNF7.设有关系模式R(A,B,C),F是R上成立的FD集,F={B→C,C→A},那么分解ρ={AB,AC}相对于F( )A.是无损分解,也保持函数依赖B.是无损分解,但不保持函数依赖C.不是无损分解,但保持函数依赖D.既不是无损分解,也不保持函数依赖8.已知关系S1和S2如下表所示,则S1与S2进行并运算,其结果的元组数为( )A.0B.4C.5D.619.设有关系R和S,与R—S等价的元组表达式是( )A.{t|R(t)V┐S(t)}B.{t|R(t)∧┐S(t)}C.{t|∃u(R(t)∨┐S(u))}D.{t|∃u(R(t) ∧┐S(u))}10.在SQL语言中,用于测试列值非空的短语是( )A.IS NOT EMPTYB.NOT UNIQUEC.IS NOT NULLD.NOT EXISTS11.SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且( )A.包括20岁和30岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括30岁但不包括20岁12.要求事务在读取数据前先加共享锁,且直到该事务执行结束时才释放相应的锁,这种封锁协议是( )A.一级封锁协议B.二级封锁协议C.三级封锁协议D.两段锁协议13.断言是DBS采用的( )A.安全性措施B.完整性措施C.恢复措施D.并发控制措施14.在对象联系图中,如果从A到B有双线箭头,则表示A是B的( )A.一个子类B.同类C.一个父类D.一个属性15.一个UML类图,如下图所示。
全国2010年1月自考数据结构导论考试试题,答案,笔记
全国2010年1月自考数据结构导论考试试题,答案,笔记全国2010年1月高等教育自学考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下述文件中适合于磁带存储的是( A )A.顺序文件B.索引文件C.散列文件D.多关键字文件2.某二叉树的后根遍历序列为dabec,中根遍历序列为debac,则先根遍历序列为( D )A.acbedB.becabC.deabcD.cedba3.含有n个结点的二叉树用二叉链表表示时,空指针域个数为( C )A.n-1B.nC.n+1D.n+2 注:子域为2n个,有n-1个孩子。
4.在一个图中,所有顶点的度数之和与图的边数的比是( C)A.1∶2B.1∶1C.2∶1D.4∶15.长度为n的链队列用单循环链表表示,若只设头指针,则出队操作的时间复杂度为( A)A.O(1)B.O(1og2n) 二分法注:若只有尾指针,那么入和出都为O(1)C.O(n) (入队)D.O(n2) -冒泡6.下述几种排序方法中,要求内存量最大的是( C )A.插入排序B.快速排序C.归并排序D.选择排序7.对n个不同值进行冒泡排序,在元素无序的情况下比较的次数为( D)A.n-1B.nC.n+1D.n(n-1)/28.对线性表进行二分查找时,要求线性表必须( C)A.以顺序方式存储B.以链式方式存储C.以顺序方式存储,且结点按关键字有序排列D.以链接方式存储,且结点按关键字有序排列9.在表长为n的顺序表上做删除运算,其平均时间复杂度为( B )A.O(1)B.O(n) 注:在双向循环链表中,删除最后一个结点C.O(nlog2n)D.O(n2) 的时间复杂度为O(1)10.当利用大小为n 的数组顺序存储一个队列时,该队列的最大容量为( B )A.n-2B.n-1C.nD.n+1 11.有关插入排序的叙述,错误的...是( C)A.插入排序在最坏情况下需要O(n 2)时间B.插入排序在最佳情况可在O(n)时间内完成C.插入排序平均需要O(nlog 2n)时间-----快速排序需要o (nlog2n )D.插入排序的空间复杂度为O(1) 12.有关树的叙述正确的是( C)A.每一个内部结点至少有一个兄弟B.每一个叶结点均有父结点C.有的树没有子树D.每个树至少有一个根结点与一个叶结点。
全国2010年1月自考数据结构导论考试试题,答案,笔记
全国2010年1月高等教育自学考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下述文件中适合于磁带存储的是( A )A.顺序文件B.索引文件C.散列文件D.多关键字文件2.某二叉树的后根遍历序列为dabec,中根遍历序列为debac,则先根遍历序列为( D )A.acbedB.becabC.deabcD.cedba3.含有n个结点的二叉树用二叉链表表示时,空指针域个数为( C )A.n-1B.nC.n+1D.n+2 注:子域为2n个,有n-1个孩子。
4.在一个图中,所有顶点的度数之和与图的边数的比是( C)A.1∶2B.1∶1C.2∶1D.4∶15.长度为n的链队列用单循环链表表示,若只设头指针,则出队操作的时间复杂度为( A)A.O(1)B.O(1og2n) 二分法注:若只有尾指针,那么入和出都为O(1)C.O(n) (入队)D.O(n2) -冒泡6.下述几种排序方法中,要求内存量最大的是( C )A.插入排序B.快速排序C.归并排序D.选择排序7.对n个不同值进行冒泡排序,在元素无序的情况下比较的次数为( D)A.n-1B.nC.n+1D.n(n-1)/28.对线性表进行二分查找时,要求线性表必须( C)A.以顺序方式存储B.以链式方式存储C.以顺序方式存储,且结点按关键字有序排列D.以链接方式存储,且结点按关键字有序排列9.在表长为n的顺序表上做删除运算,其平均时间复杂度为( B )A.O(1)B.O(n) 注:在双向循环链表中,删除最后一个结点C.O(nlog 2n)D.O(n 2) 的时间复杂度为O(1)10.当利用大小为n 的数组顺序存储一个队列时,该队列的最大容量为( B ) A.n-2 B.n-1 C.nD.n+111.有关插入排序的叙述,错误的...是( C ) A.插入排序在最坏情况下需要O(n 2)时间 B.插入排序在最佳情况可在O(n)时间内完成C.插入排序平均需要O(nlog 2n)时间 -----快速排序需要o (nlog2n )D.插入排序的空间复杂度为O(1) 12.有关树的叙述正确的是( C ) A.每一个内部结点至少有一个兄弟 B.每一个叶结点均有父结点 C.有的树没有子树D.每个树至少有一个根结点与一个叶结点。
数据结构自考试题及答案
数据结构自考试题及答案一、单项选择题(每题1分,共10分)1. 在数据结构中,最基本的数据结构是()。
A. 线性结构B. 非线性结构C. 顺序结构D. 链式结构答案:A2. 线性表的顺序存储结构和链式存储结构相比,其主要优点是()。
A. 存储密度高B. 存储密度低C. 存储空间少D. 插入和删除操作快答案:A3. 在一个长度为n的顺序表中,删除第i个元素(1≤i≤n)时,需要移动的元素个数为()。
A. i-1B. n-iC. n-i+1D. n-1答案:C4. 栈的基本运算中,不包括()。
A. 入栈B. 出栈C. 读栈顶元素D. 判断栈空答案:D5. 队列的特点是()。
A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:A6. 树的深度为5,其中度为3的结点最多有()个。
A. 3B. 7C. 9D. 15答案:D7. 在二叉树的前序遍历序列、中序遍历序列、后序遍历序列中,唯一与树的形态一一对应的序列是()。
A. 前序遍历序列B. 中序遍历序列C. 后序遍历序列D. 无法确定答案:A8. 在图的遍历过程中,若某结点的入度为0,则该结点()。
A. 一定为起点B. 一定为终点C. 可以为起点或终点D. 既不是起点也不是终点答案:C9. 哈夫曼编码是一种()。
A. 定长编码B. 变长编码C. 唯一编码D. 非唯一编码答案:B10. 用邻接矩阵表示图时,若该图是无向图,则其邻接矩阵一定是()。
A. 对称矩阵B. 非对称矩阵C. 稀疏矩阵D. 密集矩阵答案:A二、填空题(每题2分,共20分)1. 在数据结构中,算法的时间复杂度是指算法执行过程中所需要的基本运算次数与输入数据量之间的关系。
算法的时间复杂度通常用大O符号表示,例如,O(n)表示时间复杂度与输入数据量成______关系。
答案:线性2. 线性表的两种存储结构分别是顺序存储结构和______存储结构。
答案:链式3. 在栈中,栈顶元素是最后被插入的元素,遵循______原则。
2010年1月自考数据结构试题和答案
2010年1月高等教育考试数据结构试题和答案课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.若一个算法的时间复杂度用T(n)表示,其中n的含义是(A)A.问题规模B.语句条数C.循环层数D.函数数量2.具有线性结构的数据结构是(C)A.树B.图C.栈和队列D.广义表线性结构有:顺序表、栈和队列、串3.将长度为n的单链表连接在长度为m的单链表之后,其算法的时间复杂度为(C)A.O(1) B.O(m)C.O(n)D.O(m+n)4.在带头结点的双向循环链表中插入一个新结点,需要修改的指针域数量是(D)A.2个B.3个C.4个D.6个P28中void DInsertBefore(DListNode *p,DataType x)//在带头结点的双链表中,将值为x的新结点插入结点*p之前,设p≠NULL{DListNode *s=malloc(sizeof(ListNode)); ①s->data=x; ②s->prior=p->prior; ③s->next=p; ④p->prior->next=s; ⑤p->prior=s; ⑥}5.假设以数组A[60]存放循环队列的元素,其头指针是front=47,当前队列有50个元素,则队列的尾指针值为(D)A.3 B.37C.50 D.97辅导书P22中对于循环向量中的循环队列,写出通过队头队尾指针表示的队列长度公式。
(front指向实际队头,rear指向实际队尾的下一元素位置。
)当rear≥front时,队列长度L=rear-front;当rear<front时,L=m+(rear-front)。
这两种情况可统一为L=(m+(rear-front))%m,这里m为向量的大小。
本题中m=606.若栈采用链式存储结构,则下列说法中正确的是(B)A.需要判断栈满且需要判断栈空B.不需要判断栈满但需要判断栈空C.需要判断栈满但不需要判断栈空D.不需要判断栈满也不需要判断栈空P36中因为链栈中的结点是动态分配的,可以不考虑上溢,所以无需定义stackFull运算。
全国自学考试数据结构导论试题及答案4套
全国自学考试数据结构导论试题及答案4套第一套试题一、选择题(每题4分,共40分)1. 下列哪个数据结构是一种非线性结构?A. 数组B. 栈C. 队列D. 树2. 下列哪种算法不适用于解决排序问题?A. 冒泡排序B. 快速排序C. 深度优先搜索D. 归并排序3. 在数据结构中,堆的底层实现通常采用哪种数据结构?A. 数组B. 栈C. 链表D. 队列4. 下列哪个选项是描述图结构的准确说法?A. 图结构是一种线性结构B. 图结构由节点和指向节点的边构成C. 图结构不能存储数据D. 图结构不支持插入和删除操作5. 下列哪个排序算法具有最坏时间复杂度为O(nlogn)?A. 冒泡排序B. 插入排序C. 选择排序D. 希尔排序二、填空题(每题4分,共40分)1. 在二叉树中,每个节点最多有____个子节点。
2. 图的两个顶点之间的路径长度是指连接这两个顶点所需的____数。
3. 链表是一种____结构。
4. 快速排序算法的核心思想是____。
5. 栈和队列都属于线性结构,其主要区别在于____操作的限制。
三、简答题(每题10分,共30分)1. 请简要描述栈的特点以及栈的应用场景。
2. 请简要介绍图的基本概念,并说明图的应用领域。
3. 请解释递归算法的原理,并给出一个使用递归算法解决问题的例子。
四、编程题(共30分)请使用任意编程语言实现一个简单的栈数据结构,并编写测试代码进行验证。
第二套试题一、选择题(每题4分,共40分)1. 在二叉搜索树中,中序遍历的结果是____。
A. 升序排列B. 降序排列C. 随机排序D. 不确定的排序2. 在哈希表结构中,解决冲突问题的常用方法是____。
A. 线性探测B. 链地址法C. 开放地址法D. 扩容法3. AVL树是一种____。
A. 二叉搜索树B. 哈希表C. B树D. 红黑树4. 以下哪个算法不是用于解决查找问题?A. 二分查找B. 深度优先搜索C. 广度优先搜索D. 哈希查找5. 以下哪个数据结构不支持随机访问元素?A. 数组B. 栈C. 链表D. 哈希表二、填空题(每题4分,共40分)1. 在二叉树中,每个节点最多有____个子节点。
全国2010年10月自考数据结构导论考试试题,答案,笔记
全国2010年10月高等教育自学考试数据结构导论试题课程代码:02142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列描述中正确的是( C )A.数据元素是数据的最小单位------数据项是数据的最小单位B.数据结构是具有结构的数据对象C.数据结构是指相互之间存在一种或多种特定关系的数据元素的集合D.算法和程序原则上没有区别,在讨论数据结构时两者是通用的2.归并排序的时间复杂度是( B) Array A.O(n2) B.O(nlog2n)C.O(n)D.O(log2n)3.二分查找的时间复杂度是( D )A.O(n2) B.O(nlog2n)C.O(n)D.O(log2n)4.顺序存储的表中有90000个元素,已按关键字值升序排列,假设对每个元素进行查找的概率相同,且每个元素的关键字值皆不相同,用顺序查找法查找时,需平均比较的次数为( C )A.25000 B.30000C.45000D.90000 注:为元素的一半5.散列文件是一种( D)A.顺序文件 B.索引文件C.链接文件D.计算寻址文件6.两个矩阵A:m×n,B:n×p相乘,其时间复杂度为( B )A.O(n) B.O(mnp)C.O(n2)D.O(mp)注:不同字母的乘积7.常用于函数调用的数据结构是( A)A.栈B.队列(常用于广度优先搜索)C.链表D.数组8.二维数组A[n][m]以列优先顺序存储,数组A中每个元素占用1个字节,A[1][1]为首元素,其地址为0,则元素A[i][j]的地址为( B )A.(i-1)×m+(j-1)—-----行B.(j-1)×n+(i-1) 注意是以1开头,因此-1.C.(j-1)×n+iD.j×n+I 行—前*后+后列---后*前+前9.图的广度优先搜索使用的数据结构是( A )A.队列 B.树C.栈(常用与函数调用)D.集合10.序列(21,19,37,5,2)经冒泡排序法由小到大排序,在第一次执行交换后所得结果为( A)A.(19,21,37,5,2) B.(21,19,5,37,2)C.(21,19,37,2,5)D.(2,21,19,37,5) 注:从前往后交换11.数据在计算机存储器内表示时,根据结点的关键字直接计算出该结点的存储地址,这种方法称为( D) A.索引存储方法(还需要增加附加索引) B.顺序存储方法(一组连续的存储单元存储线性表)C.链式存储方法(任意的存储单元,可以不连续)D.散列存储方法12.在单链表中,存储每个结点有两个域,一个是数据域,另一个是指针域,指针域指向该结点的( B ) A.直接前趋(数据域) B.直接后继C.开始结点D.终端结点13.在已知头指针的单链表中,要在其尾部插入一新结点,其算法所需的时间复杂度为( C)A.O(1)(出队) B.O(log2n)C.O(n)D.O(n2)14.在链队列中执行入队操作,( D)A.需判别队是否空 B.需判别队是否满C.限制在链表头p进行D.限制在链表尾p进行15.一整数序列26,59,77,31,51,11,19,42,以二路归并排序从小到大排序,第一阶段的归并结果为( B ) A.31,51,11,42,26,77,59,19 B.26,59,31,77,11,51,19,42C.11,19,26,31,42,59,51,77D.26,11,19,31,51,59,77,42注:归并过程1: 初始关键字:26 59 77 31 51 11 19 422.第一次归并:26 59 31 77 11 51 19 423.第二次归并:16 31 59 77 11 19 42 513.第三次归并:11 16 19 31 42 51 59 77二、填空题(本大题共13小题,每小题2分,共26分)请在每小题的空格中填上正确答案。
自考数据结构历年试题及答案个人版精编版
自考数据结构历年试题及答案个人版GE GROUP system office room 【GEIHUA16H-GEIHUA GEIHUA8Q8-自考数据结构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,则该树中的叶子结点数为( )A.5B.8C.11D.189.下列所示各图中是中序线索化二叉树的是( A )81A10.已知含6个顶点(v 0,v 1,v 2,v 3,v 4,v 5)的无向图的邻接矩阵如图所示,则从顶点v 0出发进行深度优先遍历可能得到的顶点访问序列为( )108A.(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的有序顺序表进行二分查找,在各记录的查找概率均相等的情况下,查找成功时所需进行的关键字比较次数的平均值为( )172A.1539B.1549C.1551 D.1555 14.已知一个散列表如图所示,其散列函数为H(key)=key %11,采用二次探查法处理冲突,则下一个插入的关键字49的地址为( D )d 19715.数据库文件是由大量带有结构的( )206 A.记录组成的集合 B.字符组成的集合 C.数据项组成的集合 D.数据结构组成的集合二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
数据结构导论自考题-1_真题(含答案与解析)-交互
数据结构导论自考题-1(总分100, 做题时间90分钟)一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的。
1.算法的便于阅读和理解的特性称为( )A.正确性B.易读性C.健壮性D.时空性SSS_SIMPLE_SINA B C D分值: 2答案:B[解析] 本题主要考查的知识点是算法的易读性。
[要点透析] 算法的易读性是指易于阅读、理解和交流,便于调试、修改和扩充。
2.给定有n个元素,建立一个有序单链表的时间复杂度为( ) A.O(1) B.O(n)n)C.O(n2) D.O(nlog2SSS_SIMPLE_SINA B C D分值: 2答案:B[解析] 本题主要考查的知识点是建立有序单链表的时间复杂度。
[要点透析] 在创建有序单链表的过程中,每一次将新结点链接入有序表的时间分两部分,其一是查找插入的合适位置,其二是将元素插入。
后者的时间复杂度是常量O(1),而前者的时间复杂度由比较元素的次数决定,由于元素比较的次数是不确定的,只能取平均比较次数,为(n+1)/2,故其时间复杂度为O(n)。
由线性累加规则可得整个算法的时间复杂度为:O(n)。
3.在双链表中某结点(已知其地址)前插入一新结点,其时间复杂度为( ) A.O(n) B.O(1)C.O(n2) D.O(logn)2SSS_SIMPLE_SINA B C D分值: 2答案:B4.顺序栈s中top为栈顶指针,指向栈顶元素所在的位置,elem为存放栈的数组,则元素e进栈操作的主要语句为( )A.s.elem[top]=e;s.top=s.top+1;B.s.elem[top+1]=e;s.top=s.top+1;C.s.top=s.top+1;s.elem[top+1]=e;D.s.top=s.top+1;s.elem[top]=e;SSS_SIMPLE_SINA B C D分值: 2答案:D5.一个数组的第一个元素的存储地址是100,每个元素占2个存储单元,则第5个元素的存储地址是( )A.110 B.108C.100 D.120SSS_SIMPLE_SINA B C D分值: 2答案:B6.已知某完全二叉树采用顺序存储结构,结点数据的存放顺序依次为A、B、C、D、E、F、G、H,该完全二叉树的后序遍历序列为( )A.HDBEFCGA B.HDEBFGCAC.DHEBFGACA D.DEHBFGCASSS_SIMPLE_SINA B C D分值: 2答案:B[解析] 本题主要考查的知识点是完全二叉树的后序遍历。
数据结构导论自考试题及答案
数据结构导论自考试题及答案一、选择题(每题2分,共10分)1. 在数据结构中,队列是一种()。
A. 集合B. 线性表C. 树D. 图答案:B2. 对于长度为n的线性表,在最坏情况下,查找一个元素需要比较的次数是()。
A. nB. n/2C. 1D. 0答案:A3. 在二叉树的遍历中,先序遍历的顺序是()。
A. 根-左-右B. 左-根-右C. 右-根-左D. 根-右-左答案:A4. 哈希表的冲突可以通过()来解决。
A. 链接法B. 排序C. 折半查找D. 二分查找答案:A5. 一个具有n个顶点的无向图至少有多少条边?A. nB. n-1C. n(n-1)/2D. 0答案:D二、填空题(每题3分,共15分)6. 在顺序存储的堆栈中,判断栈为空的条件是______。
答案:栈顶指针等于-1或者指向第一个元素的前一个位置7. 快速排序的平均时间复杂度是______。
答案:O(n log n)8. 一个长度为n的链表,删除已知第i个位置元素的时间复杂度是______。
答案:O(n)9. 一个平衡二叉树的查找、插入和删除操作的时间复杂度是______。
答案:O(log n)10. 用邻接表表示图时,对于有n个顶点的无向图,邻接表中所有链表的节点数之和至少是______。
答案:n三、简答题(每题10分,共20分)11. 什么是递归?请举例说明递归算法的工作原理。
答案:递归是一种在程序中调用自身的方法,它允许函数解决问题的更小版本,直到达到一个简单的基本情况。
例如,计算n的阶乘可以使用递归算法:```function factorial(n) {if (n <= 1) {return 1;} else {return n * factorial(n - 1);}}```12. 请简述图的遍历算法有哪些,并说明它们的特点。
答案:图的遍历算法主要有深度优先搜索(DFS)和广度优先搜索(BFS)。
DFS使用栈(可以是显式的栈或者隐式的递归调用栈)来逐层深入地访问图中的顶点,直到找到一个未被访问的邻接顶点。
自学考试02142《数据结构导论》历年真题全套试题
自考02142《数据结构导论》历年真题集电子书目录1. 目录 (2)2. 历年真题 (3)2.1 02142数据结构导论200410 (3)2.2 02142数据结构导论200510 (7)2.3 02142数据结构导论200610 (10)2.4 02142数据结构导论200701 (14)2.5 02142数据结构导论200710 (17)2.6 02142数据结构导论200801 (19)2.7 02142数据结构导论200810 (22)2.8 02142数据结构导论200901 (25)2.9 02142数据结构导论200910 (28)2.10 02142数据结构导论201001 (30)2.11 02142数据结构导论201010 (34)2.12 02142数据结构导论201101 (37)2.13 02142数据结构导论201110 (40)3. 相关课程 (42)1. 目录历年真题()02142数据结构导论200410()02142数据结构导论200510()02142数据结构导论200610()02142数据结构导论200701()02142数据结构导论200710()02142数据结构导论200801()02142数据结构导论200810()02142数据结构导论200901()02142数据结构导论200910()02142数据结构导论201001()02142数据结构导论201010()02142数据结构导论201101()02142数据结构导论201110()相关课程()2. 历年真题2.1 02142数据结构导论2004102004年下半年高等教育自学考试全国统一命题考试数据结构导论试题课程代码2142一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.要将现实生活中的数据转化为计算机所能表示的形式,其转化过程依次为()A.逻辑结构、存储结构、机外表示B.存储结构、逻辑结构、机外表示C.机外表示、逻辑结构、存储结构D.机外表示、存储结构、逻辑结构2.若评价算法的时间复杂性,比较对数阶量级与线性阶量级,通常()A.对数阶量级复杂性大于线性阶量级B.对数阶量级复杂性小于线性阶量级C.对数阶量级复杂性等于线性阶量级D.两者之间无法比较3.下列关于线性表的基本操作中,属于加工型的操作是()A.初始化、求表长度、插入操作B.初始化、插入、删除操作C.求表长度、读元素、定位操作D.定位、插入、删除操作4.在一个单链表中,若p所指结点不是最后结点,s指向已生成的新结点,则在p 之后插入s所指结点的正确操作是()A.s–>next=p–>next; p–>next=B.p–>next=s–>next; s–>next=C.s–>next=p; p–>next=D.s–>next=p–>next; p=5.若有三个字符的字符串序列执行入栈操作,则其所有可能的输出排列共有()A.3种B.4种C.5种D.6种6.C语言对数组元素的存放方式通常采用()A.按行为主的存储结构B.按列为主的存储结构C.按行或列为主的存储结构D.具体存储结构无法确定7.根据定义,树的叶子结点其度数()A.必大于0B.必等于0C.必等于1D.必等于28.二叉树若采用二叉链表结构表示,则对于n个结点的二叉树一定有()A.2n个指针域其中n个指针为NULLB.2n个指针域其中n+1个指针为NULLC.2n-1个指针域其中n个指针为NULLD.2n-1个指针域其中n+1个指针为NULL9.在一个无向图中,所有顶点的度数之和等于边数的()A.1倍B.2倍C.3倍D.4倍10.若采用邻接表存储结构,则图的广度优先搜索类似于二叉树的()A.先根遍历B.中根遍历C.后根遍历D.层次遍历11.采用顺序查找法,若在表头设置岗哨,则正确的查找方式通常为()A.从第0个元素开始往后查找该数据元素B.从第1个元素开始往后查找该数据元素C.从第n个元素开始往前查找该数据元素D.从第n+1个元素开始往前查找该数据元素12.下列查找中,效率最高的查找方法是()A.顺序查找B.折半查找C.索引顺序查找D.分块查找13.索引文件通常由索引表和主文件两部分构成,其中()A.索引表和主文件均必须是有序文件B.索引表和主文件均可以是无序文件C.索引表必须是有序文件D.主文件必须是有序文件14.直接插入排序算法,其时间复杂性为()A.O(1)B.O(n)C.O(nlog2n)D.O(n2)15.下列排序方法中,属于稳定的排序方法是()A.直接插入排序法B.快速排序法C.冒泡排序法D.堆排序法二、填空题(本大题共13小题,每小题2分,共26分)请在每小题的空格中填上正确答案。
数据结构自考试题及答案
数据结构自考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性结构的特点是()。
A. 有且仅有一个根节点B. 有且仅有一个开始节点和结束节点C. 有且仅有一个根节点和子节点D. 有且仅有一个开始节点和子节点答案:B2. 下列选项中,不属于线性表的顺序存储结构的是()。
A. 数组B. 链表C. 栈D. 队列答案:B3. 在二叉树的遍历算法中,先访问根节点,然后遍历左子树,最后遍历右子树,这种遍历方式是()。
A. 前序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:A4. 哈希表的构造方法不包括()。
A. 直接定址法B. 除留余数法C. 链地址法D. 排序法答案:D5. 在图的表示方法中,邻接矩阵表示法的主要缺点是()。
A. 占用空间大B. 占用空间小C. 查找任意两个顶点之间的边不方便D. 插入和删除操作不方便答案:A6. 堆是一种特殊的完全二叉树,它满足()。
A. 每个节点的值都大于其子节点的值B. 每个节点的值都小于其子节点的值C. 每个节点的值都等于其子节点的值D. 每个节点的值都大于其父节点的值答案:A7. 在排序算法中,时间复杂度为O(nlogn)的算法是()。
A. 冒泡排序B. 快速排序C. 插入排序D. 选择排序答案:B8. 动态查找表的查找效率比静态查找表的查找效率()。
A. 高B. 低C. 相同D. 不确定答案:A9. 在数据库中,索引的作用是()。
A. 增加存储空间B. 减少存储空间C. 提高查询速度D. 降低查询速度答案:C10. 以下数据结构中,可以进行随机访问的是()。
A. 链表B. 栈C. 队列D. 数组答案:D二、多项选择题(每题3分,共15分)1. 下列数据结构中,属于非线性结构的有()。
A. 树B. 图C. 线性表D. 栈答案:AB2. 在算法分析中,时间复杂度的计算不包括()。
A. 常数项B. 循环次数C. 循环嵌套的层数D. 循环内执行的语句数量答案:AD3. 以下排序算法中,属于不稳定排序的有()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
有 1 个存储地址空间,则 a45 的地址为 _____35_______。 解; k=0+4 ( 2*10-4+1 )/2+5-4=35
注: 1,使用下列公式必要前提是,矩阵式 n*n 的,也就是方矩阵。
上三角情况: 当 i≤ J 时(前小于等于后) 所求地址 =首元素所占地址 +i(20n-i+1)/2+j-i 下三角情况: 当 i≥j 时 所求地址 =首元素所占地址 +i(i+1)/2+j
A. 以顺序方式存储
B. 以链式方式存储
C.以顺序方式存储,且结点按关键字有序排列
D. 以链接方式存储,且结点按关键字有序排列
9.在表长为 n 的顺序表上做删除运算,其平均时间复杂度为
(B)
A.O(1) C.O(nlog 2n)
B.O(n) D.O(n 2)
注:在双向循环链表中,删除最后一个结点 的时间复杂度为 O(1)
A.rear=rear+1
B.rear=(rear+1) %(m-1)
C.rear=(rear+1) % m
D.rear=(rear+1) % (m+1)
14.关于串的的叙述,不正.确..的是 ( B )
A. 串是字符的有限序列
B. 空串是由空格构成的串
注:空格串是只包括空格的串,空格串是有长度的, ,而空串没有长度。
后以此类推。
30. 已知一棵二叉树的先根遍历序列为 答:由题可知,该二叉树为:
ABCDEGHF ,中根遍历序列为 CBEDAGFH ,画出该二叉树。
○A
○B
○G
○C
○D
○H
○E
○F
31.题 31 图中二叉排序树的各结点的值为 403632~ 40,源自出各结点的值。3240
35 33
34
37 38 39
由题意可以得出如下初始堆
9 \
20
Ki ≤k 2i+1
3
7
41
67
10
解题思路: 1. 先将给出的序列以完全二叉
树依次写出。
2. 然后从最右边的看起, 若要求 最小根,那么找小的作为根。 若要求最大根, 那么找最大的 作为根。
3. 总之,求最大根, 从总根开始, 结点根依次减小,求最小根, 结点根逐渐减大。
题 31 图
32. 下述矩阵表示一个无向网,画出该无向网,并构造出其最小生成树。
0
1
2
3
4
5
答: 1 连通图为:
0
0
1
6
2
1
1
5
3
2 3
6 4
4
6
5
5 3
5 2
4 5
2.最小生成树为:
0
1
1
5
3
2
3
3
2 4
5
解题思路: 1.画连通图时的一个技巧是,数字 基本按顺序写, 0 为最高端。然后根据下标找 出路线即可。
A. 顺序文件
B. 索引文件
C.散列文件
D.多关键字文件
2.某二叉树的后根遍历序列为 dabec,中根遍历序列为 debac,则先根遍历序列为( D )
A.acbed
B.becab
C.deabc
D.cedba
3.含有 n 个结点的二叉树用二叉链表表示时,空指针域个数为
(C )
A.n-1
B.n
C.n+1
4. 调整位置即可。
75
30
3
四、算法设计题 (本大题共 2 小题,每小题 7 分,共 14 分 ) 34.二叉树按 二叉链表形式 存储,编写一个算法判别给定的二叉树是否为完全二叉树。
Int Judgecomplete(Bitree bt)
// 判断是否是二叉树,是返回 1,否返回 0
Int tag=0,Bitree p=bt,Q[];
二分法 -冒泡
注:若只有尾指针,那么入和出都为
O(1)
6.下述几种排序方法中,要求内存量最大的是 ( C )
A. 插入排序
B. 快速排序
C.归并排序
D.选择排序
7.对 n 个不同值进行冒泡排序,在元素无序的情况下比较的次数为
(D )
A.n-1
B.n
C.n+1
D.n(n-1) / 2
8.对线性表进行 二分查找 时,要求线性表必须 ( C )
Else{ if (p->lchild) return 0; Else tag=1;
// 前面已有节点为空,此结点不为空 // 首次出现结点为空
If (p->right&&!tag) QueneIn(Q,p->rchild) // 又孩子入队
Else{if (p->rchild) return 0;
2.
- 3 * y + a / y ! 2 ○A
2.写一点,划一点原则。
3 y * - a y ! 2 / + ○B
○ ○ 3. 例如: enter-> -,3 exit ->3, 此时,剩下 -。 对应着,把 A 里已输入的 –3,删掉。然后把 B 标明已产生排序,然
Push(-)push(3)pop(3) 注:退的时候,从后往前划。
for(i=1 ;i<=n ; i++)
for(j=1 ; j<=n ; j++)
for(k=1 ; k<=n ; k++) s=i+j+k ;
17. 在数据结构中,各个结点按逻辑关系互相缠绕,
任意 两个结点可以 邻接的结构 称为 __图状结构 __________ 。
18.在单链表中, 存储每个结点有两个域, 一个是 数据域 ,另一个是 指针域 ,指针域指向该结点 ___直接后继 _____的。 注:数据域 ---前接前趋,指针域 —直接后继
while(R[0].key<R[j].key) {R[j+1]=R[j];
j--; }
R[j+1]=R[0]; } }
//n 为表长,从第二个记录起进行插入。 // 第 i 个值赋值为岗哨 // 与岗哨比较,直至键值不大于岗哨值 // 将第 J个值赋给第 J+1个值
// 将第 i 个值插入到系列中
三、应用题 (本大题共 5 小题,每小题 6 分,共 30 分) 29.有一字符串的次序为 -3*y+a / y! 2,试利用栈将输出次序改变为 ( 用 push(x)表示 x 进栈, pop(x)表示 x 退栈 )
3y*-ay ! 2/+,试写出进栈和退栈的操作步骤。
解题技巧剖析: 1. 根据 后进先出 原则。 3.把原始字符串与要改变次序的字符串写成如下格式。
Else tag=1;
}//while return 1 ;
}//JudgeComplete
35. 试写出直接插入排序算法。
Void StraightInseartSort (list r, int n)
// 对顺序表直接进行插入排序
{ int i , j; For (i=2,i<=n,i++)
{ R[0]=R[i]; j=i-1 ;
C.替换是串的一种重要运算
D. 串既可以采用顺序存储,也可以采用链式存储 15. 对称矩阵 A[N][N] , A[1][1] 为首元素,将下三角
(包括对角线 )元素以 行 优先顺序存储到一维数组元素
T[1] 至
T[N(N+1) / 2]中, 则任一上三角元素 A[i][j] 存于 T[k] 中 ,下标 k 为 ( B )
A .i (i-1) / 2+j
B. j(j-1) / 2+i
C .i (j-i) / 2+1
D. j(i-1) / 2+l
二、填空题 (本大题共 13 小题,每小题 2 分,共 26 分 )
请在每小题的空格中填上正确答案。错填、不填均无分。 16.下列程序段的时间复杂度为 ____O(n 3)________。
22. 循 环 队 列 被 定 义 为 结 构 类 型 , 含 有 三 个 域 : data 、 front 和 rear , 则 循 环 队 列 sq 为 空 的 条 件 是 __sq.rear=sq.front__________ 。
23.一个 10 阶对称矩阵 A,采用 行 优先顺序压缩存储 上三角元素 , a00 为第一个元素,其存储地址为 0,每个元素占
//Q 是队列,元素是二叉树的结点指针,容量足够大
If (p==null) return (1);
QueueInit(Q),Queuelint(Q,p);
// 初始化队列,根节点入队
While (!QueueEmpty(Q))
{p=QueueOut(Q);
// 出队
If ( p->lchild&&!tag )QueneIn(Q,p->lchild) // 左孩子入队
----- 快速排序需要 o(nlog2n )
树:是 n 各节点的有限集合。 1. 当 n=0 时,称为空树。 2. 当 n>0 时, 有且仅有一个根 的结点。
B. 每一个叶结点均有父结点 C.有的树没有子树
D. 每个树至少有一个根结点与一个叶结点。 (有且仅有一个结点 ) 13.循环队列存储在数组元素 A[0] 至 A[m] 中,则入队时的操作为 ( D )
26.在图中, 第一个顶点 和最后一个顶点 相同的路径称为 __(简单)回路或(简单)环 __________。