自考题库及答案可以登录查找。作为专门的在线教育平台,的备考指导栏目就专门收录有自考的历年真题和模拟练习题,还有备考的知识点指导。点击底部咨询官网。 自考怎么复习? 1、根据自考大纲泛读教材,找好考试重点 了解了自考的考试大纲以后,需要分清知识点的主次,可以让自己较大程度的提高自己学习的效率。 2、依次熟悉题型 对自考教材的知识有了一定把握以后,就可以开始完成刷题做题。在第一次开始完成自考题型的时候,可以先翻开自考资料,将自考科目的每个题型都依次熟悉一遍。了解每个学科对应的是哪些题型,再对每个题型进行多次练习。 3、分析标准答案 在做完一套自考练习之后,可以在校对答案的时候,要学会自己分析自考的参考答案。 有些考生在完成问题后,很少分析答案是如何得到的,这样的学习效果不好。 分析自考的标准答案可以增强对知识点的记忆,避免盲目陷入问题的海洋。 4、做历年真题,了解分值 每个考生都尽量完成一套历年的试题,了解分数的分布,这有利于我们合理分配好自考学习的时间。自考/成考有疑问、不知道如何总结自考/成考考点内容、不清楚自考/成考报名当地政策,点击底部咨询官网,免费领取复习资料:
strcut node{strcut node1{char a ;node1 *next ;}node1;strcut node2{int a ;node2 *next ;}node2;strcut node3{long a ;node3 *next ;}node3;}node;用这个结构体就可以解决你要的问题了L1 = node.node1.next;L2 = node.node2.next;L3 = node.node3.next; 如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快! vaela
自考数据库系统原理历年真题如下:
(1)试为该图书借阅系统设计一个ER模型,要求标注联系类型,可省略实体属性。
(2)根据转换规则,将ER模型转换成关系模型,要求标注每个关系模式的主键和外键(如
果存在)。
关于数据库的介绍如下:
数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。当今世界是一个充满着数据的互联网世界,充斥着大量的数据。
即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。
数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。
在数据库的发展历史上,数据库先后经历了层次数据库、网状数据库和关系数据库等各个阶段的发展,数据库技术在各个方面的快速的发展。
全国2008年10月高等教育自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是( )A. 栈 B. 队列C. 树 D. 图2.下面程序段的时间复杂度为( )for (i=0; i
一 单项选择题(本大题共 小题 每小题 分 共 分 在每小题的四个备选答案中 选出一个正确答案 并将正确答案的序号填在题干的括号内)
下面程序段的时间复杂度是( )
for(i= ;i
for(j=1;j
A[i][j]=0;
A.O(n) B.O(m+n+1) C.O(m+n) D.O(m*n)
2.在单链表中,指针p指向元素为x的结点,实现“删除x的后继”的语句是( )
A.p=p->next; B.p->next=p->next->next;
C.p->next=p; D.p=p->next->next;
3.在头指针为head且表长大于1的单循环链表中,指针p指向表中某个结点,若p->next->next=
head,则( )
A.p指向头结点 B.p指向尾结点
C.*p的直接后继是头结点 D.*P的直接后继是尾结点
4.判定“带头结点的链队列为空”的条件是( )
A.Q.front==NULL B.Q.rear==NULL
C.Q.front==Q.rear D.Q.front!=Q.rear
5.设有两个串T和P,求P在T中首次出现的位置的串运算称作( )
A.联接 B.求子串 C.字符定位 D.子串定位
6.广义表A=(a,(b),(),(c,d,e))的长度为( )
A.4 B.5 C.6 D.7
7.一棵含18个结点的二叉树的高度至少为( )
A.3 B.4 C.5 D.6
8.已知二叉树的先序序列为ABDECF,中序序列为DBEAFC,则后序序列为( )
A.DEBAFC B.DEFBCA C.DEBCFA D.DEBFCA
9.无向图中一个顶点的度是指图中( )
A.通过该顶点的简单路径数 B.与该顶点相邻接的顶点数
C.通过该顶点的回路数 D.与该顶点连通的顶点数
10.已知一个图如下所示,从顶点a出发进行广度优先遍历可能得到的序列为( )
A.a c e f b d
B.a c b d f e
C.a c b d e f
D.a c d b f e
11.在下列排序方法中,平均时间性能为O(nlogn)且空间性能最好的是( )
A.快速排序 B.堆排序 C.归并排序 D.基数排序
12.已知一组关键字为{25,48,36,72,79,82,23,40,16,35},其中每相邻两个为有序子序列。.WingwIT.CoM对这些子序列进行一趟两两归并的结果是( )
A.{25,36,48,72,23,40,79,82,16,35}
B.{25,36,48,72,16,23,40,79,82,35}
C.{25,36,48,72,16,23,35,40,79,82}
D.{16,23,25,35,36,40,48,72,79,82}
13.设顺序存储的线性表共有123个元素,按分块查找的要求等分成3块。若对索引表采用顺序查找来确定块,并在确定的块中进行顺序查找,则在查找概率相等的情况下,分块查找成功时的平均查找长度为( )
A.21 B.23 C.41 D.62
14.索引非顺序文件的特点是( )
A.主文件无序,索引表有序 B.主文件有序,索引表无序
C.主文件有序,索引表有序 D.主文件无序,索引表无序
15.倒排文件的主要优点是( )
A.便于进行插入和删除运算 B.便于进行文件的恢复
C.便于进行多关键字查询 D.节省存储空间
二、填空题 (本大题共10小题,每小题2分,若有两个空格,每个空格1分,共20分)
16.抽象数据类型的特点是将____________和____________封装在一起,从而现实信息隐藏。
17.从顺序表中删除一个元素时,表中所有在被删元素之后的元素均需____________一个位置。
18.在队列中,允许进行插入操作的一端称为____________,允许进行删除操作的一端称为____________。
19.如图两个栈共享一个向量空间,top1和top分别为指向两个栈顶元素的指针,则“栈满”的判定条件是____________。
20.设S1="good",S2=" ",S3="book",则S1,S2和S3依次联接后的结果是____________。
21.假设三维数组A[10][9][8]按行优先顺序存储,若每个元素占3个存储单元,且首地址为100,则元素A[9][8][7]的存储地址是____________。
22.已知在一棵含有n个结点的树中,只有度为k的分支结点和度为0的叶子结点,则该树中含有的叶子结点的数目为____________。
23.能够成功完全拓扑排序的图一定是一个____________。
24.如果在排序前,关键字序列已接近正序或逆序,则在堆排序和快速排序两者之中,选用____________较为适当。
25.假设哈希表的表长为m,哈希函数为H(key),若用线性探查法解决冲突,则探查地址序列的形式表达为____________。
三、解答题 (本大题共4小题,每小题5分,共20分)
26.假设通信电文使用的字符集为{a,b,c,d,e,f},名字符在电文中出现的频度分别为:34,5,12,23,8,18,试为这6个字符设计哈夫曼编码。请先画出你所构造的哈夫曼树(要求树中左孩子结点的权值小于右孩子结点的权值),然后分别写出每个字符对应的编码。
27.已知一个图如下所示,其顶点按a、b、c、d、e、f顺序存放在邻接表的顶点表中,请画出该图的邻接表,使得按此邻接表进行深度优先遍历时得到的顶点序列为acbefd,进行广度优先遍历时得到的顶点序列为acbdfe。
28.已知两个4×5的稀疏矩阵的三元组表分别如下:
0 1 4 16 0 1 1 32
1 2 2 18 1 2 2 - 22
2 3 4 - 25 2 2 5 69
3 4 2 28 3 3 4 25
4 4 2 51
请画出这两个稀疏矩阵之和的三元组表。
29.从空树起,依次插入关键字40,8,90,15,62,95,12,23,56,32,构造一棵二叉排序树。
(1)画出该二叉排序树
(2)画出删去该树中元素值为90的结点之后的二叉排序树。
四、算法阅读题 (本大题共4小题,每小题5分,共20分)
30.如图所示,利用同一循环向量空间实现两个队列,其类型Queue2定义如下:
typedef struct {
DataType data[MaxSize];
int front[2],length[2];
} Queue2;
对于 i=0或1,front[i]和length[i]分别为第i个队列的头指针和长度域。请在空缺处填入合适的内容,实现第i个循环队列的入队操作。
int EnQueue(Queue2*Q,int i,DataType x)
{//若第i个队列不满,则元素x入队列,并返回1,否则返回0
if(i<0||i>1)return 0;
if( (1) )
return 0;
Q->data[ (2) ]=x;
Q->length[ (3) ]++;
return 1;
}
(1)
(2)
(3)
31.某二叉树的线索链表存储结构如图(b)所示,其中p为指向根结点的指针,图(a)为结点结构。阅读下列算法,并回答问题:
(1)写出执行函数调用f(p)的输出结果;
(2)简述函数f的功能。
{
while(t)
{
printf(t->data);
if(t->lchild)
t=t->lchild;
else
t=t->rchild;
}
}
(1)
(2)
32.下列函数FindCycle(G,i)的功能是,对一个采用邻接表作存储结构的有向图G,利用深度优先搜索策略寻找一条经过顶点v i 的简单回路。数组cycle_path用于保存搜索过程中形成的回路,cycle_path[k]=j(j≥0)表示在回路中顶点v k 的下一个顶点是v j 。请在空缺处填入合适的内容,使其成为一个完整的算法。
vertex firstedge
已知邻接表的顶点表结点结构为:
adjvex next
边表结点 EdgeNode结构为:
int cycle_path[MaxNum];
int FindCycle(ALGraph*G,int i)
{//若回路存在,则返回1,否则返回0
int j;
for(j=0;j n;j++)cycle_path[j]=-1;
return DFSPath(G,i,i);
}
int DFSPath(ALGraph*G,int j,int i)
{
EdgeNode *p;
int cycled=0;
for(p=G->adjlist[j].firstedge;p&&!cycled;p=p->next)
{
cycle_path[j]=p->adjvex;
if( (1 ) )cycled=1;//已找到回路
else
if(cycle_path[p->adjvex]==-1)cycled= (2) ;
}
return (3)
}
(1)
(2)
(3)
33.阅读下列函数algo,并回答问题。
(1)假设整型数组A[1..8]中的元素依次为(3,8,9,1,7,4,2,6)。执行函数调用algo(A,8)时,外层while的循环体执行多少次?函数的返回值是多少?
(2)简述函数algo(L,n)的功能。
int algo(int L[],intn)
{
int i=0,j,s=1,t=n;
while (i!=(n+1)/2)
{
int x=L[s];
i=s;j=t;
while(i
链式存储结构的特点是借助_指示数据元素地址的指针______来表示数据元素之间的逻辑关系。数据的存储结构是其逻辑结构在计算机中的___存放形式________。
自考题库及答案可以登录查找。作为专门的在线教育平台,的备考指导栏目就专门收录有自考的历年真题和模拟练习题,还有备考的知识点指导。点击底部咨询官网。 自考怎么复习? 1、根据自考大纲泛读教材,找好考试重点 了解了自考的考试大纲以后,需要分清知识点的主次,可以让自己较大程度的提高自己学习的效率。 2、依次熟悉题型 对自考教材的知识有了一定把握以后,就可以开始完成刷题做题。在第一次开始完成自考题型的时候,可以先翻开自考资料,将自考科目的每个题型都依次熟悉一遍。了解每个学科对应的是哪些题型,再对每个题型进行多次练习。 3、分析标准答案 在做完一套自考练习之后,可以在校对答案的时候,要学会自己分析自考的参考答案。 有些考生在完成问题后,很少分析答案是如何得到的,这样的学习效果不好。 分析自考的标准答案可以增强对知识点的记忆,避免盲目陷入问题的海洋。 4、做历年真题,了解分值 每个考生都尽量完成一套历年的试题,了解分数的分布,这有利于我们合理分配好自考学习的时间。自考/成考有疑问、不知道如何总结自考/成考考点内容、不清楚自考/成考报名当地政策,点击底部咨询官网,免费领取复习资料:
没的。我找了好多。自己买本练习册吧。。。
先看一遍书,然后自己做练习,不会的翻书找答案,然后详细标注,这样有目的的学习,效果才好!
深度的递归算法int depth(BiTreeNode * T){ if(T==NULL) return 0; // 如果结点为空,高度为0 else { int h1= depth(T->lchild); // 获得左子树的高度 int h2= depth(T->rchild); // 获得右子树的高度 return max(h1,h2)+1; }}
全国2003年上半年自考数据结构答案及标准评分 2006年10月自学考试"数据结构"试题参考答案 很多数据结构试题 自考用的数据结构课后答案 DOC文件,很大,现只复制最前面的一小部分,如需要,提供邮箱,我发给你(还有“数据结构试题及答案”) 第一章 绪论 1.1 简述下列概念:数据、数据元素、数据类型、数据结构、逻辑结构、存储结构、线性结构、非线性结构。 ● 数据:指能够被计算机识别、存储和加工处理的信息载体。 ● 数据元素:就是数据的基本单位,在某些情况下,数据元素也称为元素、结点、顶点、记录。数据元素有时可以由若干数据项组成。 ● 数据类型:是一个值的集合以及在这些值上定义的一组操作的总称。通常数据类型可以看作是程序设计语言中已实现的数据结构。 ● 数据结构:指的是数据之间的相互关系,即数据的组织形式。一般包括三个方面的内容:数据的逻辑结构、存储结构和数据的运算。 ● 逻辑结构:指数据元素之间的逻辑关系。 ● 存储结构:数据元素及其关系在计算机存储器内的表示,称为数据的存储结构. ● 线性结构:数据逻辑结构中的一类。它的特征是若结构为非空集,则该结构有且只有一个开始结点和一个终端结点,并且所有结点都有且只有一个直接前趋和一个直接后继。线性表就是一个典型的线性结构。栈、队列、串等都是线性结构。 ● 非线性结构:数据逻辑结构中的另一大类,它的逻辑特征是一个结点可能有多个直接前趋和直接后继。数组、广义表、树和图等数据结构都是非线性结构。 1.2 试举一个数据结构的例子、叙述其逻辑结构、存储结构、运算三个方面的内容。 答: 例如有一张学生体检情况登记表,记录了一个班的学生的身高、体重等各项体检信息。这张登记表中,每个学生的各项体检信息排在一行上。这个表就是一个数据结构。每个记录(有姓名,学号,身高和体重等字段)就是一个结点,对于整个表来说,只有一个开始结点(它的前面无记录)和一个终端结点(它的后面无记录),其他的结点则各有一个也只有一个直接前趋和直接后继(它的前面和后面均有且只有一个记录)。这几个关系就确定了这个表的逻辑结构是线性结构。 这个表中的数据如何存储到计算机里,并且如何表示数据元素之间的关系呢? 即用一片连续的内存单元来存放这些记录(如用数组表示)还是随机存放各结点数据再用指针进行链接呢? 这就是存储结构的问题。 在这个表的某种存储结构基础上,可实现对这张表中的记录进行查询,修改,删除等操作。对这个表可以进行哪些操作以及如何实现这些操作就是数据的运算问题了。 1.3 常用的存储表示方法有哪几种? 答: 常用的存储表示方法有四种: ● 顺序存储方法:它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现。由此得到的存储表示称为顺序存储结构,通常借助程序语言的数组描述。 ● 链接存储方法:它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示。由此得到的存储表示称为链式存储结构,通常借助于程序语言的指针类型描述。 ● 索引存储方法:除建立存储结点信息外,还建立附加的索引表来标识结点的地址。组成索引表的索引项由结点的关键字和地址组成。若每个结点在索引表中都有一个索引项,则该索引表称之为稠密索引(Dense Index)。若一组结点在索引表中只对应一个索引项,则该索引表称为稀疏索引。 ● 散列存储方法:就是根据结点的关键字直接计算出该结点的存储地址。 1.4 设三个函数f,g,h分别为 f(n)=100n3+n2+1000 , g(n)=25n3+5000n2 , h(n)=n1.5+5000nlgn 请判断下列关系是否成立: (1) f(n)=O(g(n)) (2) g(n)=O(f(n)) (3) h(n)=O(n1.5) (4) h(n)=O(nlgn) 分析: 数学符号"O"的严格的数学定义: 若T(n)和f(n)是定义在正整数集合上的两个函数,则T(n)=O(f(n))表示存在正的常数C和n0,使得当n≥n0时都满足0≤T(n)≤C•f(n)。 通俗地说,就是当n→∞时,f(n)的函数值增长速度与T(n)的增长速度同阶。一般,一个函数的增长速度与该函数的最高次阶同阶。 即: O(f(n))=n3 O(g(n))=n3 O(h(n))=n1.5 所以答案为: 答: ●(1)成立。 ●(2)成立。 ●(3)成立。 ●(4)不成立。
数据的逻辑结构在计算机存储器内的表示,称为数据的___ 存储结构_________。当问题的规模n趋向无穷大时,算法执行时间T(n)的数量级被称为算法的___渐进时间复杂度_____。
编译器书上的例子一般都是用VC++,不过编译器问题不大,一般都是ANSI C/C++语法,编译器都可以编译。 实践考试试题如下类型: 1. 编一C程序,它能读入集合A的一串整数(以-9999为结束标记,整数个数小于1000)和集合B的一串整数(以-9999为结束标记,整数个数小于1000),计算出A与B的交集,并以由小到大的次序输出A与B的交集中的所有整数(输入整数时,相邻的两个用空格隔开。为A或B输入时,同一个数可能出现多次,而A与B的交集中同一个数不能出现多次)。 (注:程序的可执行文件名必须是 e1.exe)。2. 编一C程序,它能根据读入的数据构造有向图G,并输出G的DFS遍历序列(从V0开始),图的输入形式为n V0 Vi0 V1 Vi1 V2 Vi2……Vi Vin -1 -1(-1,-1为输入结束标记,其余的值都>=0且 全国2008年10月高等教育自学考试数据结构试题课程代码:02331一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是( )A. 栈 B. 队列C. 树 D. 图2.下面程序段的时间复杂度为( )for (i=0; i