自学考试数据结构重点

自学考试数据结构重点
自学考试数据结构重点

第一章

1.数据是信息的载体,它能够被计算机识别、存储和加工处理。2.数据元素是数据的基本单位。有些情况下,数据元素也称为元素、结点、顶点、记录。3.数据结构指的是数据之间的相互关系,即数据的组织形式。一般包括三个方面的内容:①数据元素之间的逻辑关系,也称为数据的逻辑结构;②数据元素及其关系在计算机存储器内的表示,称为数据的存储结构;

③数据的运算,即对数据施加的操作。

4.数据类型是一个值的集合以及在这些值上定义的一组操作的总称。按“值”是否可分解,可将数据类型划分为两类:①原子类型,其值不可分解;②结构类型,其值可分解为若干个成分。

5.抽象数据类型是指抽象数据的组织和与之相关的操作。可以看作是数据的逻辑结构及其在逻辑结构上定义的操作。6.数据的逻辑结构简称为数据结构。数据的逻辑结构可分为两大类:①线性结构(~的逻辑特征是若结构是非空集,则有且仅有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前趋和一个直接后继);②非线性结构(~的逻辑特征是一个结点可能有多个直接前趋和直接后继)。

7.数据存储结构可用四种基本的存储方法表示:①顺序存储方法(该方法是把逻辑上相邻的结点存储在物理位置上相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现。由此得到的存储表示称为顺序存储结构);②链接存储方法(该方法不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。由此得到的存储表示称为链式存储结构);③索引存储方法(该方法通常是在存储结点信息的同时,还建立附加的索引表);④散列存储方法(该方法的基本思想是根据结点的关键字直接计算出该结点的存储地址)。

8.非形式地说,算法是任意一个良定义的计算过程,它以一个或多个值作为输入,并产生一个或多个值为输出。因此,一个算法是一系列将输入转换为输出的计算步骤。

9.求解同一计算问题可能有许多不同的算法,究竟如何来评价这些算法的好坏以便从中选出较好的算法呢?

选用的算法首先应该是“正确”的。此外,主要考虑三点:①执行算法所耗费的时间;②执行算法所耗费的存储空间,其中主要考虑辅助存储空间;③算法应易于理解,易于编码,易于调试等等。

10.性结构反映结点的逻辑关系是一对一的,非线性结构反映结点间的逻辑关系是多对多的。

11.数据的运算最常用的五种,分别是查找、插入、删除、更新、和排序。

12.一个算法的效率可分为时间效率和空间效率。

第二章线性表

1.线性表是由n(n≥0)个数据元素(结点)a1,a2,a n组成的有限序列。其中数据元素的个数n定义为表的长度。当n=0是称为空表,常常将非空的线性表(n>0)记作:(a1,a2,a n)。2.按顺序存储方法存储的线性表称为顺序表,按链式存储的线性表称为链表。

3.顺序表上实现的基本运算有:插入、删除。在顺序表做插入运算,平均要移动表中的一半结点。当表长n较大时,算法的效率相当低。虽然E IS(n)中的n的系数较小,但就数量级而言,它仍然是线性阶的,因此算法的平均时间复杂度是0(n);在顺序表做删除运算,平均要移动表中约一半的结点,平均时间复杂度也是0(n)。

4.线性表中结点集合的元素是有限的,结点间的关系是一对一的。

5.链表的每个结点只有一个链域的链表称为单链表。建立单链表有两种方法:头插法建表、尾插法建表。

6.在链表的开始结点之前附加一个结点,称为头结点,会带来以下两个优点:①由于开始结点的位置被存放在头结点的指针域中,所以在链表的第一个位置上的操作就和在表的其它位置上操作一致,无须进行特殊处理;②无论链表是否为空,其头指针是指向头结点的非空指针,因此空表和非空表的处理和非空表的处理也就统一了。

7.查找运算分两种:①按序号查找(链表不是随机存取结构);

②按值查找。

8.循环链表是一种首尾相接的链表。其特点是无须增加存储量,仅对表的链接方式稍作改变,即可使得表处理更加方便灵活。

9.双链表若希望从表中快速确定一个结点的直接前趋,可以在单链表的每个结点里再增加一个指向其直接前趋的指针域prior。这们形成的链表中有两条方向不同的链,故称之为~。和单链表类似,双链表一般也是由头指针head惟一确定的,

增加头结点也能够使双链表上的某些运算变得方便,将头结点和尾结点链接起来也能构成循环链表,并称之为双向循环链表。

10.顺序表和链表,它们各有所长。在实际应用中究竟选用哪一种存储结构呢?

答:这要根据具体问题的要求和性质来决定。通常从以下几个方面来考虑:①基于空间的考虑;②基于时间的考虑。存储密度是指结点数据本身所占的存储量和整个结点结构所占的存储量之比;显然,顺序表的存储密度为1,而链表的存储密度小于1。当线性表的长度变化不大,易于事先确定其大小时,为了节约存储空间,宜采用顺序表作为存储结构;顺序表是由向量实现的,它是一种随机存取结构,对表中任一结点都可在0(1)时间内直接地存取,而链表中的结点,需从头指针起顺着链扫描才能取得。因此,若线性表的操作主要是进行查找,很少做插入和删除操作时,采用顺序表做存储结构为宜;

对于频繁进行插入和删除的线性表,宜采用链表做存储结构;

若表的插入和删除主要发生在表的首尾两端,则采用尾指针表示的单循环链表为宜。

11.存储密度是指结点数据本身所占的存储量和整个结点结构所占的存储量之比。即:存储密度=(结点数据本身所占的存储量)/(结点结构所占的存储总量)。存储密度越大,存储空间的利用率就越高。显然,顺序表的存储密度为1,而链表的存储密度小于1。

12.顺序表相对于链表的优点有节省存储空间和随机存取。

链表相对于顺序表的优点有插入和删除操作方便。

13.双链表中要删除已知结点*p,其时间复杂度为0(1)。

14.在循环链表中,可根据任一结点的地址遍历整个链表,而单链表中需知道头指针。

第三章和队列

1.栈和队列是两种特殊的线性表,它们的逻辑结构和线性表相同,只是其运算规则较线性表有更多的限制,故又称它们为运算受限的线性表。

2.栈是限制仅在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶,另一端称为栈底。当表中没有元素时称为空栈。

3.栈的基本运算有六种:①InitStack(S)构造一个空栈S;

②StaclEmpty(S)判栈空。若S为空栈,则返回TRUE,否则返

回FALSE;③StackFull(S)判栈满。若S为满栈,则返回TRUE,否则返回FALSE。该运算只适用于栈的顺序存储结构;④Push(S,x)进栈。若栈S不满,则将元素X插入S的栈顶;⑤Pop(S)退栈。若栈S非空,则将S的栈顶元素删去并返回该元素;⑥StackTop(S)取栈顶元素。若栈S非空,则返回栈顶元素,但不改变栈的状态。

4.栈的顺序存储结构简称为顺序栈,它是运算受限的顺序表。

5.在顺序栈上实现的六种基本运算:

6.栈的链式存储结构称为链栈,它是运算受限的单链表,其插入和删除操作仅限制在表头位置上进行。

7.队列也是一种运算受限的线性表。队列也称作先进先出的线性表,简称为FIFO表。它只允许在表的一端进行插入,而在另一端进行删除。允许删除的一段称为队头,允许插入的一段称为队尾。

8.队列的基本运算有六种:①InitQueue(Q)置空队。构造一个空队列Q。②QueueEmpty(Q)判队空。若队列Q为空,则返回真值,否则返回假值。③QueueFull(Q)判队满。若队列Q为满,则返回真值,否则返回假值。此操作只适用于队列的顺序存储结构。④EnQueue(Q,X)若队列Q非满,则将元素X插入Q 的队尾。此操作简称入队。⑤DeQueue(Q)若队列Q非空,则删去的队头元素,并返回该元素。此操作简称出他。⑥QueueFront(Q)若队列Q非空,则返回队头元素,但不改变队列Q的状态。

9.递归是指若在一个函数、过程或者数据结构定义的内部又直接(或间接)出现有定义本身的应用,则称它们是递归的,或者是递归定义的。

10递归算法的设计一般有两步:①将规模较大的原问题分解一个或多个规模更小、但具有类似于原问题特性的子问题,即较大的问题递归地用较小的子问题来描述,解原问题的方法同样可用来解这些子问题;②确定一个或多个无须分解、可直接求解的最小子问题。上述第一步称为递归步骤,第二步中所述的最小子问题称为递归的终止条件。

第四章串

1.串是零个或多个字符组成的有限序列。一般记为S=”a1a2…

a n”

2.将仅由一个或多个空格组成的串称为空白串;不包括任何字符的串称为空串。

3.串中任意个连续字符组成的子序列称为该串的子串,包含

1

子串的串相应地称为主串。

4.通常在程序中使用的串可分为两种:串变量和串常量。5.串的顺序存储结构称为顺序串。子串定位运算又称串的模式匹配或串匹配。在匹配中,一般将主串称为目标串,子串称为模式串。

第五章多维数组和广义表

1.一般都是采用顺序存储的方法来表示数组。通常有两种顺序存储方法:①行优先顺序;②列优先顺序。按上述两种方式顺序存储的数组,只要知道开始结点的存放地址(即基地址),维数和每维的上、下界,以及每个数组元素所占用的单元数,就可以将数组元素的存储地址表示为其下标的线性函数。2.特殊矩阵是指非零元素或零元素的分布有一定规律的矩阵。有:①对称矩阵;②三角矩阵;③对角矩阵。

3.稀疏矩阵设矩阵A mn中有s个非零元素,若s远远小于矩阵元素的总数(即s<

4.若将表示稀疏矩阵的非零元素的三元组按行优先(或列优先)的顺序排列(跳过零元素),则得到一个其结点均是三无组的线性表。将该线性表的顺序存储结构称为三元组表。

5.广义表(Lists又称列表)是线性表的推广。

6.一个表的“深度”是指表展开后所含括号的层数,例如,表L、A、B、C的深度为分别为1、2、3、4表D的深度为∞。7.通常把与树对应的广义表称为纯表,它限制了表中万分的共享和递归;把允许结点共享的表称为再入表;而把允许递归的表称为递归表。

8.广义表的两个特殊的基本运算:取表头head(LS)和取表尾tail(LS)。

9.值得注意的是广义表()和(())不同。前者是长度为0的空表,对其不能做求表头和表尾的运算;而后者是长度为1的非空表(只不过该表中惟一的一个元素是空表),对其可进行分解,得到的表头和表尾均是空表()。

第六章树

1.树(Tree)是n (n≥0)个结点的有限集T,T为空时称为空树,否则它满足如下两个条件:①有且仅有一个特定的称为根(Root)的结点;②其余的结点可分为m(m≥0)互不相交的子集T1、T2、Tm,其中每个子集本身又是一棵树,并称其为根的子树(Subtree)。

2.一个结点拥有的子树数称为该结点的度。一棵树的度是指该树中结点的最大度数。度为零的结点称为叶子或终端结点。度不为零的结点称为分支结点或非终端结点,除根结点之外的分支结点统称为内部结点,根结点又称为开始结点。树中某个结点的子树之根称为该结点的孩子或儿子,相应地,该结点称为孩子的双亲或父亲。

3.森林是m(m≥0)棵互不相交的树的集合。树和森林的概念很相近,删去一棵树的根,就得到一个森林。反之,加上一个结点作树根,森林就变为一棵树。

4.二叉树是n(n≥0)个结点的有限集,它或者是空集(n=0),或者由一个根结点及两棵互不相交的、分别称作这个根的左子树和右子树的二叉树组成。

5.二叉树具有以下几个重要性质:①二叉树第I层上的结点数目最多为2i-1 (i≥1);证明:可用数学归纳法证明(归纳基础:i=1时,有2i-1=20=1。因为第一层上只有一个根结点,所以命题成立。归纳假设:假设对所有的j(1≤j2k-1-1。另一方面,由性质2知道n ≤2k-1,即:2k-1-1

6.树、森林到二叉树的转换:①在所有兄弟结点之间加一连线;②对每个结点,除了保留与其长子的连线外,去掉该结点与其它孩子的连线。

7.森林的两种遍历方法:⑴前序遍历森林,若森林非空,则:①访问森林中第一棵树的根结点;②前序遍历第一棵树中根结点的各子树所构成的森林;③前序遍历除第一棵树外其它树构成的森林。⑵后序遍历森林,若森林非空,则:①后序遍历森林中第一棵树的根结点的各子树所构成的森林;②访问第一棵树的根结点;③后序遍历除第一棵树外其它树构成的森林。

8.树的路径长度是从树根到树中每一结点的路径长度之和。

第七章图

1.对图进得深度优先遍历时,按访问顶点的先后次序得到的顶点序列称为该图的深度优先遍历序列,或DFS序列。

2.深度优先搜索的特点是尽可能先对纵深方向进行搜索。

3.广度优先搜索的特点是尽可能先对横向进行搜索。

4.广度优先遍历图所得的顶点序列,定义为图的广度优先遍历序列,或BFS序列。

5.由深度优先搜索得到的生成树称为深度优先生成树,或DFS生成树。

6.对一个有向无环图G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得对图中任意一对顶点u和v,若∈E (G),则u在线性序列中出现在v之前。通常将这样的线性序列称为满足拓扑次序的序列,简称拓扑序列。

第八章排序

1.排序就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。

2.排序方法可以按照不同的原则加以分类:在排序过程中,若整个文件都是放在内存中处理,排序时不涉及数据的内、外存交换,则称之为内部排序;反之,若排序过程中要进行数据的内、外存交换,则称之为外部排序。

3.内部排序方法可以分为五类:插入排序、选择排序、交换排序、归并排序和分配排序。

4.插入排序的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。

5.快速排序采用了一种分冶的策略,通常称其为分冶法。分冶法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题;递归地解这些子问题,然后将这些子问题的解组合为原问题的解。

6.对于n个记录的集合进行冒泡排序,在最坏情况下所需要的时间是O(n2);对于n个记录的集合进行归并排序,所需要的附加空间是O(n)。

7.堆排序是一树形选择排序,它的特点是,在排序过程中,将R看成是一棵完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系,在当前无序区中选择关键字最大的记录。

8.在堆排序、快速排序和归并排序中,若只从存储空间考虑,则应首先选取堆排序方法,其次选取快速排序方法,最后选取归并排序方法;若只从排序结果的稳定性考虑,则应选取归并排序方法;若只从平均情况下最快考虑,则应选取快速排序方法;若只从最坏情况下最快并且要节省内存考虑,则应选取堆排序方法。

9.大多数排序算法都有两个基本的操作:比较两个关键字的大小和改变向记录的指针或移动记录本身。

第九章查找

1.查找的定义是:给定一个值K,在含有n个结点的表中找出关键字等于给定值K的结点。

2.若在查找的同时对表做修改操作,则相应的表称之为动态查找表,否则称之为静态查找表。

3.和排序类似,查找也有内查找和外查找之分。若整个查找过程都在内存进行,则称之为内查找;反之,若查找过程中需要访问外存,则称之为外查找。

4.二分查找又称折半查找。

5.二叉排序树又称二叉查找(搜索)树,其定义为:二叉排序树或者是空树,或者是满足如下性质的二叉树。①若经的左子树非空,则左子树上所有结点的值均小于根结点的值;②若它的右子树非空,则右子树上所有结点的值均大于根结点的值;

③左、右子树本身又各是一棵二叉排序树。

6.平衡二叉树是指树中任一结点的左右子树的高度大致相同。若任一结点的左右子树的高度均相同,则二叉树是完全平衡的。平衡的二叉排序树是指满足BST性质的平衡二叉树。

第十章文件

1.文件是性质相同的记录的集合。

2.数据项有时也称为字段,或者称为属性。其值能惟一标识一个记录的数据项或数据项的组合称为主关键安项,其它不

2

能惟一标识一个记录的数据项则称为次关键字项,主关键字项的值称为主关键字。

3.文件上的操作主要有两类:检索和维护。

4.检索就是在文件中查找满足给定条件的记录,它既可以按记录的逻辑号查找,也可以按关键字查找。

5.文件的基本组织方式有四种:顺序组织、索引组织、散列组织和链组织。文件组织的各种方式往往是这四种基本方式的结合。

6.磁道是盘片上同心圆,同一盘组上半径相同的磁道合在一起称为一个柱面。

7.顺序文件是指按记录进入文件的先后顺序存放、其逻辑顺序和物理顺序一致的文件。若顺序文件中的记录按其主关键字有序,则称此顺序文件为顺序有序文件;否则称为顺序无序文件。

8.索引表是用索引的方法组织文件时,通常是在文件本身之外,另外建立一张表,它指明逻辑记录和物理记录之间的一一对应关系,这张表就叫做索引表,它和主文件一起构成的文件称作索引文件。

9.索引表中的每一项称作索引项。

10.对于索引非顺序文凭,由于主文件中记录是无序的,则为每个记录建立一个索引项,这样建立的索引表称为稠密索引。11.散列文件是利用散列存储方式组织的文件,称为直接存取文件。

12.对于文件来说,磁盘上的文件记录通常是成组存放的,若干个记录组成一个存储单位,在散列文件中,这个存储单位叫做桶。

13.多重表文件是将索引方法和链接方法相结合的一种组织方式,它对每个需要查询的次着急字建立一个索引,同时将具有相同次关键字的记录链接成一个链表,并将此链表的头指针、链表长度及次关键字,儿为索引表的一个索引项。

例题:

完成下列中序遍历二叉树的算法,注意在遍历中只有一个栈,而不用任何其他变量。

# define max 100

typedef struct tnode{

struct tnode * lchild, *rchild:

}tnode;

typedef struct stack{

tnode *elem[max];

int top;

}stack;

void indrder(tnode * bt)

{stack s;

s.top=0; s.elem[s.top++]=bt

do

{while(s.elem[s.top--1]!=null)

s.elem[s.top++]=s.elem[s.top-1]!>lchild

if(s.top>1)

{s.top—

printf[s.top-1]->data);

s.elem[s.top-1]=elem[s.top-1]->vchild

}

}while(!(s.top= =1&& s.elem[s.top-1]= =null))

s.top=0}

2.下列算法的功能是求出指定结点在给定的二叉排序树中所在的层次。

Void level (BSTree root.p);

{

int level=0;

if (! Root );

return(0);

else{

level ++;

while(root->key!=p->key){;

if (root->keykey);

root=root->lchid:

else

root=root->rchild;

level++;

}

return(level);

}

}

3.t利用一维数组int a[n]可以对n个整数进行排列,其中一种排列算法的处理思想是将n 个整数分别作为数组a的个元素

的值,每次(即第I 次)从元素a[I]~a[n-1]中找出最小的一个元素a[k](I

解:void sort(int a[n])

{

int I,j,t,min,minpos;

for(I=o;I

min=a[I]:

minpos=1;

for(j=I+1;I

if(a[j]

min=a;

minpos=j;

}

if (minpos!=I)}

t=a[I];

t=a[I];

a[I]=a[minpos]

a[I]=a[minpos];

a[minpos]=t:

}}}

4.设给定的散列存储空间为:H[0..m],每个H[I]单元可存放一

记录,选取的散列函数为H[R_KEY],其中R_KEY为记录关键字,解决冲突的方法为线性探测法,试编写将某记录R入表H 中的算法。

解:

void buildhash(keytype R.key,int I,int j,int n)

{

for (I=0;I

j=H(R.key);

if(H[J]=r_key;

else{

do{

j=(j+1)%(m+1)

}while(H[j]);

H[j]=r_key;

}}}

5试写出二分查找的递归算法。

解:int binsrch(int low,int hig ,keytype k)

{int mid;

if(low

return(0);

else

{(mid=(low+hig)/2;

if(k= =r[mid].key)

return(mid)

if(k

rerurn(binsrch(mid+1.hig.k));

if(k

return(binsrch (low.mid-1,k));

}}

6.写一个遍历B—树的算法,使输出的关键字序列递增有序。

算法中的读盘操作可假写为DiskRead.

解:void inorder(Btree t)

{int I:

if(t):

{for (I=1;Ikeynum;I++)

{diskread(T->son[I-1])

printf(“%c”,t->key[I];

diskread(T->son[I];

inorder(T->son[I];

}}

1.在双链表中要删除已知结点*p,其时间复杂度为O(1。)2.若以{4,5,6,7,8}作为叶子结点的权值构造哈夫曼树,则其带权路径长度是82。

3.在按关键字递增的数组A[20]中,按二分查找方法时行查找时,查找度为5的元素个数为5。

4.在左右子树均不空的先序线索二叉树中,空链域的数目是1。

5.已知数组A[8][8]为对称矩阵,其中每个元素占5个单元。

现将其下三角部分按行优先次序存储在起始地址为100的连续的内存单元中,则元素A[4,5]对应的地址为195。

6.在各种查找算法中,平均查找长度和结点的个数n无关的查找方法是散列查找。

3

7.已知完全二叉树的第4层有4个结点,则其叶子结点数是6。

8.具有20个结点的完全二叉树的深度为5。

9.下面程序段的时间复杂度为

x=n;y=0(n>1)

while(x>=(y+1)*(y+1))

y++l;

10.已知广义表A=((a,b,c),(d,e,f),中取出原子e的运算是:head(tail(head(tail(A))))

11.在按关键字递增的数组A[12]中,按二分查找方法进行查

找时,查找长度为3的元素个数为4。

12.已知完全二叉树的第7层有8个结点,则叶子结点数是32。13.具有100个结点的完全二叉树的深度为7。

14.已知数组A[8][8]为对称矩阵,其中每一个元素占5个单元。现将其下三角部分按行优先次序存储在起始地址为1000的

连续的内存单元中。则元素A[7,5]对应的地址为1165。15.散列函数H(key)=key%p中,p应取素数。

16.抽象数据类型是指数据逻辑结构及与之相关的操作。17.索引顺序查找适宜对分块有序的顺序表进行查找。

18.如果排序过程不改变具有关键字的记录之间的相对次序,则称该排序方法是稳定的。

19.在无向图中,若从顶点a到顶点b存在路径,则称a与b

之间是连通的。

20.在文本编辑程序中查找某一特定单词在文本中出现的位置,

可以利用串的substr。

21.假设以行优先顺序将一个n阶的5对角矩阵压缩存储到一

维数组Q中,则数组Q的大小至少为5n-6(n>5)。

22.在含100个结点的完全二叉树中,叶子结点的个数为50。

4

全国自学考试数据结构导论试题及答案(4套)

全国2011年1月自学考试数据结构导论试题 课程代码:02142 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.在顺序表中查找第i个元素,时间效率最高的算法的时间复杂度为( ) A.O(1) B.O(n) C.O(log2n) D.O(n) 2.树形结构中,度为0的结点称为( ) A.树根 B.叶子 C.路径 D.二叉树 3.已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7},E={,,,},则图G的拓扑序列是 ( ) A.V1,V3,V4,V6,V2,V5,V7 B.V1,V3,V2,V6,V4,V5,V7 C.V1,V3,V4,V5,V2,V6,V7 D.V1,V2,V5,V3,V4,V6,V7 4.有关图中路径的定义,表述正确的是( ) A.路径是顶点和相邻顶点偶对构成的边所形成的序列 B.路径是不同顶点所形成的序列 C.路径是不同边所形成的序列 D.路径是不同顶点和不同边所形成的集合 5.串的长度是指( ) A.串中所含不同字母的个数 B.串中所含字符的个数 C.串中所含不同字符的个数 D.串中所含非空格字符的个数 6.组成数据的基本单位是( ) A.数据项 B.数据类型 C.数据元素 D.数据变量 7.程序段 i=n;x=0; do{x=x+5*i;i--;}while (i>0); 的时间复杂度为( ) A.O(1) B.O(n) C.O(n2) D.O(n3) 8.与串的逻辑结构不同的 ...数据结构是( ) A.线性表 B.栈 C.队列 D.树

自考数据结构导论20051年10月试卷

全国2005年10月高等教育自学考试 数据结构导论试题 课程代码:02142 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.若要描述数据处理的变化过程,其正确的次序应为( ) A.处理要求、基本运算和运算、算法 B.处理要求、算法、基本运算和运算 C.基本运算和运算、处理要求、算法 D.算法、处理要求、基本运算和运算 2.从运算类型角度考虑,属于引用型的运算是( ) A.插入、删除 B.删除、修改 C.查找、读取 D.查找、删除 3.若在长度为n的顺序表中插入一个结点,则其结点的移动次数( ) A.最少为0,最多为n B.最少为1,最多为n C.最少为0,最多为n+1 D.最少为1,最多为n+1 4.在一个单链表中,若p所指结点是q所指结点的前驱结点,则在结点p、q之间插入结点s的正确操作是( ) A.s->next=q;p->next=s->next B.p->next=q;p->next=s C.s->next=q->next;p->next=s D.s->next=q->next;p->next=s->next 5.若有一串数字5、6、7、8入栈,则其不可能 ...的输出序列为( ) A.5、6、7、8 B.8、7、6、5 C.8、7、5、6 D.5、6、8、7 6.FORTRAN语言对数组元素的存放方式通常采用( ) A.按行为主的存储结构 B.按列为主的存储结构 C.按行或列为主的存储结构 D.按行和列为主的存储结构 7.树是n个结点的有穷集合,( ) A.树的结点个数可以为0,此时称该树为空树 B.树至少含有一个根结点,不能为空 C.树至少含有一个根结点和一个叶子结点 D.树至少含有一个根结点和两个叶子结点 8.深度为k的二叉树至多有( ) A.2k个叶子 B.2k-1个叶子 C.2k-1个叶子 D.2k-1-1个叶子 9.具有10个顶点的有向完全图应具有( ) 浙02142# 数据结构导论试题第 1 页(共 4 页)

全国自考数据库系统原理历年试题及答案

2008年1月高等教育自学考试全国统一命题考试 数据库系统原理试卷 4735 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.数据库在磁盘上的基本组织形式是( B ) A.DB B.文件 C.二维表D.系统目录 2.ER(实体联系模型)模型是数据库的设计工具之一,它一般适用于建立数据库的( A ) A.概念模型B.逻辑模型 C.内部模型D.外部模型 3.数据库三级模式中,用户与数据库系统的接口是( B ) A.模式B.外模式 C.内模式D.逻辑模式 4.在文件系统中,所具有的数据独立性是( D ) A.系统独立性

B.物理独立性 C.逻辑独立性 D.设备独立性 5.在DB技术中,“脏数据”是指( D ) A.未回退的数据 B.未提交的数据 C.回退的数据 D.未提交随后又被撤消的数据 6.关系模式至少应属于( A ) A.1NF B.2NF C.3NF D.BCNF 7.设有关系模式R(ABCD),F是R上成立的FD集,F={A→B,B→C},则属性集BD的闭包(BD)+为( B ) A.BD B.BCD C.BC D.CD 8.设有关系R如题8图所示:(C)

R 则 专业,入学年份(R)的元组数为 A.2 B.3 C.4 D.5 9.集合R与S的交可以用关系代数的基本运算表 示为( A ) A.R-(R-S) B.R+(R-S) C.R-(S-R) D.S-(R-S) l0.已知SN是一个字符型字段,下列SQL查询语 句( C ) SELECT SN FROM S WHERE SN LIKE′AB%′;的执行结果为 A.找出含有3个字符′AB%′的所有SN字段 B.找出仅含3个字符且前两个字符为′AB′的SN字段 C.找出以字符′AB′开头的所有SN字段

自考数据结构导论复习资料

数据结构导论复习 第一章概论 1.数据:凡能被计算机存储、加工处理的对象。 2.数据元素:是数据的基本单位,在程序中作为一个整体而加以考虑和处理 3.数据项:又叫字段或域,它是数据的不可分割的最小标识单位。 4.逻辑结构需要注意的几点: ①逻辑结构与数据元素本身的内容无关 ②逻辑结构与数据元素相对位置无关 ③逻辑结构与所有结点的个数无关 5.数据元素间逻辑关系是指数据元素之间的关联方式或称“领接关系”。 6.四类基本逻辑结构(集合、线性结构、树形结构和图形结构)的不同特点? 答:集合中任何两个结点之间都没有逻辑关系,组织形式松散; 线性结构中结点按逻辑关系依次排列形成一条“锁链”; 树形结构具有分支、层次特性,其形态有点像自然界中的树; 图状结构最复杂,其中的各个结点按逻辑关系互相缠绕,任何两个结点都可以领接。 7.运算是在逻辑结构层次上对处理功能的抽象

8.基本运算的含义? 答:假如是S上的一些运算的集合,是的一个子集,使得中每一运算都可以“归约”为中的一个或多个运算,而中任一运算不可归约为别的运算,则称中运算为基本运算 9.数据结构是指由一个逻辑结构S和S上的一个基本运算集构成的整体(S ,)。 10.数据结构涉及数据表示和数据处理两个方面 11.存储结构的含义和四种基本存储方式的基本思想? 答:存储结构是指按照逻辑结构的要求建立的数据的机内表示称为存储结构。 一个存储结构应包含三个主要的部分:存储结点、机内表示和附加设施。 存储结构包括四种存储方式,顺序存储方式、链式存储方式、索引存储方式和散列存储方式。 12.运算实现与运算的联系与区别? 答:运算指的是数据在逻辑结构S上的某种操作,运算只描述处理功能,不包括处理步骤和方法;而运算实现是指一个完成该运算功能的程序,运算实现的核心是处理步骤的规定,即算法设计。 13.算法的概念和分类? 答:算法是指规定了求解给定类型问题所需的所有“处理步骤”及其执行顺序,使得给定类型的任何问题能在有限时间内被

自考数据结构试题真题

全国2011年1月高等教育自学考试 数据结构试题 课程代码:02331 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.下列选项中与数据存储结构无关的术语是() A.顺序表 B.链表 C.链队列 D.栈 2.将两个各有n个元素的有序表归并成一个有序表,最少的比较次数是() A.n-1 B.n C.2n-1 D.2n 3.已知循环队列的存储空间大小为m,队头指针front指向队头元素,队尾指针rear指向队尾元素的下一个位置,则向队列中插入新元素时,修改指针的操作是() A.rear=(rear-1)%m; B.front=(front+1)%m; C.front=(front-1)%m; D.rear=(rear+1)%m; 4.递归实现或函数调用时,处理参数及返回地址,应采用的数据结构是() A.堆栈 B.多维数组 C.队列 D.线性表 5.设有两个串p和q,其中q是p的子串,则求q在p中首次出现位置的算法称为() A.求子串 B.串联接 C.串匹配 D.求串长 6.对于广义表A,若head(A)等于tail(A),则表A为() A.( ) B.(( )) C.(( ),( )) D.(( ),( ),( )) 7.若一棵具有n(n>0)个结点的二叉树的先序序列与后序序列正好相反,则该二叉树一定是 ()A.结点均无左孩子的二叉树 B.结点均无右孩子的二叉树

C.高度为n的二叉树 D.存在度为2的结点的二叉树 8.若一棵二叉树中度为l的结点个数是3,度为2的结点个数是4,则该二叉树叶子结点的个数是() A.4 B.5 C.7 D.8 9.下列叙述中错误的是() A.图的遍历是从给定的源点出发对每一个顶点访问且仅访问一次 B.图的遍历可以采用深度优先遍历和广度优先遍历 C.图的广度优先遍历只适用于无向图 D.图的深度优先遍历是一个递归过程 10.已知有向图G=(V,E),其中V={V1,V2,V3,V4},E={},图G的拓扑序列是() A.V1,V2,V3,V4 B.V1,V3,V2,V4 C.V1,V3,V4,V2 D.V1,V2,V4,V3 11.平均时间复杂度为O(n log n)的稳定排序算法是() A.快速排序 B.堆排序 C.归并排序 D.冒泡排序 12.已知关键字序列为(51,22,83,46,75,18,68,30),对其进行快速排序,第一趟划分完成后的关键字序列是() 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.43 B.79 C.198 D.200 14.在含有10个关键字的3阶B-树中进行查找,至多访问的结点个数为() A.2 B.3 C.4 D.5 15.ISAM文件系统中采用多级索引的目的是() A.提高检索效率 B.提高存储效率

计算机系统结构重点题解自考复习资料

第 1 章计算机系统结构的基本概念 1.1 解释下列术语 层次结构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每 一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级, 汇编语言机器级,高级语言机器级,应用语言机器级等。 虚拟机:用软件实现的机器。 然后再在这低翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序, 一级机器上运行,实现程序的功能。 解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效 程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复, 直到解释执行完整个程序。 计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。 在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透 明性。 计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻 辑设计等。 计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。 系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。 Amdahl 定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高, 受限于该部件的执行时间占总执行时间的百分比。 而是相对地簇聚。包程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的, 括时间局部性和空间局部性。 CPI:每条指令执行的平均时钟周期数。 测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的 处理性能。

自考数据结构导论

全国2014年4月高等教育自学考试 数据结构导论试题 课程代码:02142 请考生按规定用笔将所有试题的答案涂、写在答题纸上。 选择题部分 注意事项: 1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。 2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。 1.下列几种算法时间复杂度中,最小的是( A ) A.O(log2n) B.O(n) C.O(n2) D.O(1) 2.数据的存储方式中除了顺序存储方式和链式存储方式之外,还有( D ) A.索引存储方式和树形存储方式 B.线性存储方式和散列存储方式 C.线性存储方式和索引存储方式 D.索引存储方式和散列存储方式 3.表长为n的顺序表中做删除运算的平均时间复杂度为( C ) A.O(1) B.O(log2n) C.O(n) D.O(n2) 4.顺序表中定位算法(查找值为x的结点序号最小值)的平均时间复杂度为( C ) A.O(1) B.O(log2n) C.O(n) D.O(n2) 5.元素的进栈次序为A,B,C,D,E,出栈的第一个元素为E,则第四个出栈的元素为( C ) A.D B.C C.B D.A 6.带头结点的链队列中,队列头和队列尾指针分别为front和rear,则判断队列空的条件为( A ) A.front==rear B.front!=NULL C.rear!==NULL D.front==NULL 7.深度为5的二叉树,结点个数最多为( A )

2021年自学考试数据结构重点总结02331整理

自考数据构造重点(整顿) 第一章概论 1.瑞士计算机科学家沃思提出:算法+数据构造=程序。算法是对数据运算描述,而数据构造涉及逻辑构造和存储构造。由此可见,程序设计实质是针对实际问题选取一种好数据构造和设计一种好算法,而好算法在很大限度上取决于描述实际问题数据构造。 2.数据是信息载体。数据元素是数据基本单位。一种数据元素可以由若干个数据项构成,数据项是具备独立含义最小标记单位。数据对象是具备相似性质数据元素集合。 3.数据构造指是数据元素之间互有关系,即数据组织形式。 数据构造普通涉及如下三方面内容:数据逻辑构造、数据存储构造、数据运算 ①数据逻辑构造是从逻辑关系上描述数据,与数据元素存储构造无关,是独立于计算机。 数据逻辑构造分类:线性构造和非线性构造 ②数据元素及其关系在计算机内存储方式,称为数据存储构造(物理构造)。 数据存储构造是逻辑构造用计算机语言实现,它依赖于计算机语言。 ③数据运算。最惯用检索、插入、删除、更新、排序等。 4.数据四种基本存储办法:顺序存储、链接存储、索引存储、散列存储 (1)顺序存储:普通借助程序设计语言数组描述。 (2)链接存储:普通借助于程序语言指针来描述。 (3)索引存储:索引表由若干索引项构成。核心字是能唯一标记一种元素一种或各种数据项组合。 (4)散列存储:该办法基本思想是:依照元素核心字直接计算出该元素存储地址。 5.算法必要满足5个准则:输入,0个或各种数据作为输入;输出,产生一种或各种输出;有穷性,算法执行有限步后结束;拟定性,每一条指令含义都明确;可行性,算法是可行。 算法与程序区别:程序必要依赖于计算机程序语言,而一种算法可用自然语言、计算机程序语言、数学语言或商定符号语言来描述。当前惯用描述算法语言有两类:类Pascal和类C。 6.评价算法优劣:算法"对的性"是一方面要考虑。此外,重要考虑如下三点: ①执行算法所耗费时间,即时间复杂性; ②执行算法所耗费存储空间,重要是辅助空间,即空间复杂性; ③算法应易于理解、易于编程,易于调试等,即可读性和可操作性。 以上几点最重要是时间复杂性,时间复杂度惯用渐进时间复杂度表达。

自考 管理系统中计算机应用 孟海鹰 精讲班 第四章数据库系统

管理系统中计算机 应用 主讲老师:孟海鹰 第四章数据库系统 主要内容 数据库和数据模型的基本概念★ 关系模型的结构、完整性、关系运算及规范化数据库的安全性 SQL语言的基本概念和基本操作★ 4.1数据库系统概述 4.1.1数据模型 4.1.2关系模型与关系数据库 4.1.3数据规范化 4.1.4数据库的安全性

概念模型 以人的观点模拟物质本身的模型 也称为信息模型 是用户和数据库设计人员交流的语言 独立于任何数据库管理系统,但是又很容易向数据库管理系统所支持的逻辑模型转换概念模型常用术语 1. 实体:指客观存在,并且可以互相区别的事物。 如一个人,一本书。 2. 属性:实体具有的某一特性。 如人的年龄、身高、体重等。 3. 码(实体标识符):能将一个实体与其他实体区别开来的属性或属性组。 如人的身份证号码、考生的准考证号码和课程代码等。 3. 域:属性的取值范围称为该属性的域。例如年龄的域为小于120的整数。 4. 实体型:用实体名及其属性名集合来抽象和刻化同类实体称为实体型。 例如:学生(学号,姓名,性别,成绩)就是一个实体型。 5. 实体集:性质相同的同类实体的集合 如所有男生,所有吉普车等。 7. 联系:实体内部属性之间的联系和实体型之间的联系。可以分为三类: (1)一对一联系(1:1) (2)一对多联系(1:n) (3)多对多联系(m:n) 实体间的联系有两种: (1)不同实体集的实体间联系. 一对一联系(1:1)、一对多联系(1:N)、多对多联系(M:N)

关系有三种类型: 一对一(1:1) 一对多(1:n) 多对多(m:n) (2)相同实体集的实体间联系

全国2013年10月高等教育自学考试数据结构

全国2013年10月高等教育自学考试 数据结构试题 课程代码:02331 请考生按规定用笔将所有试题的答案涂、写在答题纸上。 选择题部分 注意事项: 1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。 2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。 1.算法的时间复杂度表征的是 A.算法的可读性B.算法的难易程度 C.执行算法所耗费的时间D.执行算法所耗费的存储空间 2.对需要频繁插入和删除结点的线性表,适合的存储方式是 A.顺序储存B.链式存储 C.索引存储D.散列存储 3.在头指针为head的循环链表中,判断指针变量P指向尾结点的条件是 A.p->next->next==head B.p->next==head C.p->next->next==NULL D.p->next==NULL 4.迪杰斯特拉(Dijkstra)算法的功能是 A.求图中某顶点到其他顶点的最短路径B.求图中所有顶点之间的最短路径 C.求图的最小生成树D.求图的拓扑排序序列 5.若栈的进栈序列为1,2,3,4,5,则经过出入栈操作不可能 ...获得的出栈序列是A.4,5,3,2,1 B.4,3,5,1,2 C.1,2,3,4,5 D.5,4,3,2,1 6.A是7×4的二维数组,按行优先方式顺序存储,元素A[0][0]的存储地址为1 000,若每个元素占2个字节,则元素A[3][3]的存储地址为 A.1015 B.1016 C.1028 D.1030 7.深度为4的完全二叉树的结点数至少为 A.4 B.8 C.13 D.15 8.若采用邻接矩阵A存储有向图G,则结点k的入度等于A中 A.结点k对应行元素之和B.结点k对应列元素之和 C.结点k对应行和列元素之和D.非零元素之和 9.无向图G的邻接矩阵一定是

全国数据结构导论10月高等教育自学考试试题与答案

全国20XX 年10月高等教育自学考试 数据结构导论试题 课程代码:02142 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.在表长为n 的顺序表上做插入运算,平均要移动的结点数为( C ) A.n/4 B.n/3 C.n/2 D.n 2.顺序表中有19个元素,第一个元素的地址为200,且每个元素占一个字节,则第14个元素的存储地址为( B )b+(i-1)l A.212 B.213 C.214 D.215 3.由顶点V 1,V 2,V 3构成的图的邻接矩阵为???? ??????010100110,则该图中顶点V 1的出度为( C ) A.0 B.1 C.2 D.3 4.元素的进栈次序为A ,B ,C ,D ,E ,则退栈中不可能... 的序列是( C ) A.A ,B ,C ,D ,E B.B ,C ,D ,E ,A C.E ,A ,B ,C ,D D.E ,D ,C ,B ,A 5.由带权为9,2,5,7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为(C ) A.23 B.37 C.44 D.46 6.在已知尾指针的单循环链表中,插入一个新结点使之成为首结点,其算法的时间复杂度为( A ) A.O (1) B.O (log 2n ) C.O (n ) D.O (n 2) 7.已知一个有序表为(13,18,24,35,47,50,62,83,90,115,134),当二分查找值为90的元素时,查找成功时需比较的次数为( B ) A.1 B.2 C.3 D.4 8.在查找顺序表各结点概率相等的情况下,顺序按值查找某个元素的算法时间复杂度为 ( B ) A.O (1) B.O (n) C.O (n ) D.O (log 2n)

2020年10月全国数据结构导论自考试题及答案解析.doc

??????????????????????精品自学考料推荐?????????????????? 全国 2019 年 10 月高等教育自学考试 数据结构导论试题 课程代码: 02142 一、单项选择题(本大题共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=s; C.s–>next=p; p –>next=s; B.p –>next=s –>next; s –>next=p; D.s–>next=p –>next; p=s; 5.若有三个字符的字符串序列执行入栈操作,则其所有可能的输出排列共有() A.3 种 B.4 种 C.5 种 D.6 种 6.C 语言对数组元素的存放方式通常采用() A. 按行为主的存储结构 B. 按列为主的存储结构 C.按行或列为主的存储结构 D. 具体存储结构无法确定 7.根据定义,树的叶子结点其度数() A. 必大于 0 B. 必等于 0 C.必等于 1 D. 必等于 2 8.二叉树若采用二叉链表结构表示,则对于n 个结点的二叉树一定有() A.2n 个指针域其中n 个指针为 NULL B.2n 个指针域其中n+1 个指针为 NULL C.2n-1 个指针域其中n 个指针为 NULL D.2n-1 个指针域其中n+1 个指针为 NULL 9.在一个无向图中,所有顶点的度数之和等于边数的() A.1 倍 B.2 倍 C.3 倍 D.4 倍 10.若采用邻接表存储结构,则图的广度优先搜索类似于二叉树的() 1

全国2013年1月自学考试数据库系统原理试题及答案

绝密★考试结束前 全国2013年1月高等教育自学考试 数据库系统原理试题 课程代码:04735 请考生按规定用笔将所有试题的答案涂、写在答题纸上。 选择题部分 注意事项: 1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。 2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸” 的相应代码涂黑。未涂、错涂或多涂均无分。 1.以下不属于 ...数据库系统优于文件系统的特点是 A.数据库系统冗余更少、共享性更强 B.数据库系统的数据独立性更强 C.数据库系统为用户提供更方便的用户接口 D.数据库系统对数据的操作以记录为单位2.数据库完整性约束的建立需要通过DBMS提供的 A.数据定义语言 B.数据操纵语言 C.数据查询语言 D.数据控制语言 3.数据库逻辑设计时,应首先 A.设计外模型 B.把概念模型转化成逻辑模型 C.设计存储模型 D.修正模型 4.如果规定:一个学校只有一个校长,一个校长只在一个学校任职,则实体集学校和校长之间的联系是 A.1对1 B.1对多 C.多对多 D.多对1 2013年1月数据库系统原理试题第1页(共6页)

5.在关系模式设计时,每个关系模式应只对应于 A.一个实体类型或一个联系类型 B.一个实体类型和一个联系类型 C.多个实体类型 D.多个联系类型 6.设F是关系模型R的FD集,如果对F中每个非平凡函数依赖X→Y,都有X是R的超键,则R属于 A.1NF B.2NF C.3NF D.BCNF 7.设关系R如下表,则π专业,入学年份(R)的元组数为 A.2 B.3 8.常用的关系运算是关系代数和 A.集合运算 B.逻辑演算 C.关系演算 D.集合演算 9.如果想找出关系R的属性A上为空的那些元组,则选择子句应该为 A.WHERE A=NULL B.WHERE A==NULL C.WHERE A IS NULL D.WHERE A NOT IS NULL 10.SQL语言的聚合函数COUNT、SUM、A VG等,不允许 ...出现在其中的子句为 A.SELECT B.HA VING C.GROUP…HA VING D.WHERE 11.下列语句中表示事务执行成功的是 https://www.360docs.net/doc/dc2009545.html,MIT B.BEGIN TRANSACTION C.ROLLBACK D.OK 12.事务把数据R的S锁升级为X锁的操作是 A.XFIND R B.SFIND R 2013年1月数据库系统原理试题第2页(共6页)

自学考试数据结构重点总结

自考数据结构重点(2014整理) 第一章概论 1、瑞士计算机科学家沃思提出:算法+数据结构=程序。算法就是对数据运算得描述,而数据结构包括逻辑结构与存储结构。由此可见,程序设计得实质就是针对实际问题选择一种好得数据结构与设计一个好得算法,而好得算法在很大程度上取决于描述实际问题得数据结构。 2、数据就是信息得载体。数据元素就是数据得基本单位。一个数据元素可以由若干个数据项组成,数据项就是具有独立含义得最小标识单位.数据对象就是具有相同性质得数据元素得集合。 3、数据结构指得就是数据元素之间得相互关系,即数据得组织形式。 数据结构一般包括以下三方面内容:数据得逻辑结构、数据得存储结构、数据得运算 ①数据得逻辑结构就是从逻辑关系上描述数据,与数据元素得存储结构无关,就是独立于计算机得。 数据得逻辑结构分类:线性结构与非线性结构 ②数据元素及其关系在计算机内得存储方式,称为数据得存储结构(物理结构)。 数据得存储结构就是逻辑结构用计算机语言得实现,它依赖于计算机语言。 ③数据得运算。最常用得检索、插入、删除、更新、排序等。 4、数据得四种基本存储方法:顺序存储、链接存储、索引存储、散列存储 (1)顺序存储:通常借助程序设计语言得数组描述。 (2)链接存储:通常借助于程序语言得指针来描述。 (3)索引存储:索引表由若干索引项组成。关键字就是能唯一标识一个元素得一个或多个数据项得组合。 (4)散列存储:该方法得基本思想就是:根据元素得关键字直接计算出该元素得存储地址. 5、算法必须满足5个准则:输入,0个或多个数据作为输入;输出,产生一个或多个输出;有穷性,算法执行有限步后结束;确定性,每一条指令得含义都明确;可行性,算法就是可行得。 算法与程序得区别:程序必须依赖于计算机程序语言,而一个算法可用自然语言、计算机程序语言、数学语言或约定得符号语言来描述。目前常用得描述算法语言有两类:类Pascal与类C. 6、评价算法得优劣:算法得"正确性"就是首先要考虑得.此外,主要考虑如下三点:?①执行算法所耗费得时间,即时间复杂性; ②执行算法所耗费得存储空间,主要就是辅助空间,即空间复杂性; ③算法应易于理解、易于编程,易于调试等,即可读性与可操作性。 以上几点最主要得就是时间复杂性,时间复杂度常用渐进时间复杂度表示。 7、算法求解问题得输入量称为问题得规模,用一个正整数n表示. 8、常见得时间复杂度按数量级递增排列依次为:常数阶0(1)、对数阶0(log2n)、线性阶0(n)、线性对数阶0(nl og2n)、平方阶0(n2)立方阶0(n3)、…、k次方阶0(nk)、指数阶0(2n)与阶乘阶0(n!)。 9、一个算法得空间复杂度S(n)定义为该算法所耗费得存储空间,它就是问题规模n得函数,它包括存储算法本身所占得存储空间、算法得输入输出数据所占得存储空间与算法在运行过程中临时占用得存储空间。 第二章线性表 1、数据得运算就是定义在逻辑结构上得,而运算得具体实现就是在存储结构上进行得. 2、只要确定了线性表存储得起始位置,线性表中任意一个元素都可随机存取,所以顺序表就是一种随机存取结构。 3、常见得线性表得基本运算: (1)置空表InitList(L) 构造一个空得线性表L。 (2)求表长ListLength(L)求线性表L中得结点个数,即求表长。 (3)GetNode(L,i)取线性表L中得第i个元素.?(4)LocateNode(L,x)在L中查找第一个值为x 得元素,并返回该元素在L中得位置。若L中没有元素得值为x ,则返回0值。?(5)InsertList(L,i,x)在线性表L得第i个元素之前插入一个值为x 得新元素,表L得长度加1. (6)DeleteList(L,i)删除线性表L得第i个元素,删除后表L得长度减1. 4、顺序存储方法:把线性表得数据元素按逻辑次序依次存放在一组地址连续得存储单元里得方法。 顺序表(Sequential List):用顺序存储方法存储得线性表称为顺序表.顺序表就是一种随机存取结构,顺序表得特点就是逻辑上相邻得结点其物理位置亦相邻。 5、顺序表上实现得基本运算:

自考数据结构导论20120年01月试卷

全国2012年1月高等教育自学考试 数据结构导论试题 课程代码:02142 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.结点按逻辑关系依次排列形成一条“锁链”的数据结构是( ) A.集合 B.线性结构 C.树形结构 D.图状结构 2.下面算法程序段的时间复杂度为( ) for ( int i=0; i

A. 先进先出的线性表 B. 先进后出的线性表 C. 后进先出的线性表 D.随意进出的线性表 8.10阶上三角矩阵压缩存储时需存储的元素个数为( ) A.11 B.56 C.100 D.101 9.深度为k(k≥1)的二叉树,结点数最多有( ) A.2k个 B.(2k -1)个 C.2k-1个 D.(2k+1)个 10.具有12个结点的二叉树的二叉链表存储结构中,空链域NULL的个数为( ) A. 11 B.13 C. 23 D. 25 11.具有n个顶点的无向图的边数最多为( ) A.n+1 B.n(n+1) C.n(n-1)/2 D.2n(n+1) 12.三个顶点v1,v2,v3的图的邻接矩阵为 010 001 010 ?? ?? ?? ?? ?? ,该图中顶点v3的入度为( ) A. 0 B. 1 C. 2 D. 3 13.顺序存储的表格中有60000个元素,已按关键字值升序排列,假定对每个元素进行查找 的概率是相同的,且每个元素的关键字值不相同。用顺序查找法查找时,平均比较次数约为( ) A.20000 B.30000 C.40000 D.60000 14.外存储器的主要特点是( ) A.容量小和存取速度低 B.容量大和存取速度低 C.容量大和存取速度高 D.容量小和存取速度高 15.在待排数据基本有序的前提下,效率最高的排序算法是( ) A.直接插入排序 B.直接选择排序 C.快速排序 D.归并排序 浙02142# 数据结构导论试题第 2 页共 5 页

2018自考《数据库系统原理》填空题总结

第一章节数据库系统基本概念 1.文件系统中的数据独立性是指(设备)独立性。 2.在数据库方式下的信息处理中,(数据)占据了中心位置。 3.DBMS是位于(用户)和(OS)之间的一层数据管理软件。 4.数据模型不仅描述数据本身的特点,还要描述(数据之间的联系)。 5.DBS中,用户的数据和磁盘中的数据之间转换由(DBMS)实现。 6.在层次、网状模型中,用(指针)导航数据;而在关系模型中,用(关键码)导航数据。7.数据库的三级模式结构是对(数据)的三个抽象级别。 8.DBS中存放三级结构定义的DB称为(数据字典)。 9.DBS的全局结构体现了其(模块功能)结构。 10.DBMS为应用程序运行时开辟的DB系统缓冲区,主要用于(数据传输)和(模式转换)。11.层次模型用(树)型结构来表示实体间的联系。 12.在数据的人工管理阶段,程序与数据是(一一对应)的关系。 13.定义数据库的安全性和完整性的工作由(DBA)完成。 14.数据独立性的好处是(数据存储方式的变化不会影响到应用程序的使用)。 15.数据库的三级体系结构使用户能抽象地使用数据,不必关心(数据在计算机中的表示和存储) 。 16.概念设计阶段用到实体、实体集、属性和实体标识符等4个术语;逻辑设计阶段用到字段、记录、文件和关键码等4个术语; 第二章节数据库设计和ER模型 1.ER数据模型一般在数据(概念设计)阶段使用。 2.“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的(物理设计)阶段。 3.数据模型是用来描述数据库的结构和语义的,数据模型有(概念数据模型)和(结构数据模型)两类,ER模型是(概念数据模型)。 4.数据实施阶段包括两项重要的工作,一项是数据(载入),另一项是应用程序的编码和调试。5.ER图向关系模型转化要解决的问题是如何将实体和实体之间的联系转换成关系模式,如何确定这些关系模式的(属性和键)。 6.数据库的物理设计是对一个给定的(基本数据)模型选取一个最合适应用环境的物理结构的过程。 7.数据库设计中,将(各局部ER之间的联系)分ER图集成时,主要任务是增补。 8.数据库应用系统设计中逻辑设计的主要内容是把ER模型的(实体和联系)转换为关系模式。 9.ER方法是(概念数据模型)设计的方法。 10.现实世界到机器世界过渡的中间层次是(概念模型)。 11.概念设计的目标是(企业组织信息需求)产生反映的数据库概念结构,即概念模式。12.在DBD中,子类具有一个重要的性质:(继承性)。 13.DBD的逻辑设计分成两大部分:(DB逻辑结构设计和应用程序设计)。 14.关系模型用(关键码)表示实体之间的联系。 15.DBS的维护工作由(DBA) 承担。 16.概念设计是设计能够反映用户需求的数据库概念结构,即概念模型。 17.ER模型是人们认识客观世界的一种方法、工具。 18.ER模型具有客观性和主观性两重含义。 第三章节关系模式设计理论

自考数据库系统原理完整版

自考《数据库系统原理》串讲笔记 第一章数据库基础知识 学习目的与要求: 本章属于基础知识,主要是对一些概念的理解和记忆。没有难点,相对的重点是数据模型的四个层次,数据库管理系统的功能,数据库系统的全局结构。 考核知识点与考核要求 1.1数据管理技术的发展阶段(识记) 1.2数据描述的术语(领会) 1.3数据抽象的级别(领会) 1.4数据库管理系统(DBMS) (领会) 1.5数据库系统(DBS)(领会) 1.1 数据管理技术的发展 几个数据库的基本术语: 数据:描述事物的符号记录 数据处理:是指从某些已知的数据出发,推导加工出一些新的数据,这些新的数据又表示了新的信息。 数据管理:是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。 数据管理技术:对数据的收集、整理、组织、存储、维护、检索、传送等操作,基本目的就是从大量的,杂乱无章的,难以理解的数据中筛选出有意义的数据。 数据处理是与数据管理相联系的,数据管理技术的优劣,将直接影响数据处理的效率。 1.人工管理阶段(20世纪50年代中期以前) 1)数据不保存在机器中; 2)没有专用软件对数据进行管理; 3)只有程序的概念,没有文件的概念; 4)数据面向程序。 2. 文件系统阶段特点与缺陷(20世纪50年代后期至60年代中期) 1)数据可长期保存在磁盘上; 2)数据的逻辑结构与物理结构有了区别; 3)文件组织呈现多样化; 4)数据不再属于某个特定程序,可以重复使用; 5)对数据的操作以记录为单位。 文件系统三个缺陷: 1)数据冗余性 2)数据不一致性

2021年自考02331数据结构重点总结最终修订

自考02331数据构造重点总结(最后修订) 第一章概论 1.瑞士计算机科学家沃思提出:算法+数据构造=程序。算法是对数据运算描述,而数据构造涉及逻辑构造和存储构造。由此可见,程序设计实质是针对实际问题选取一种好数据构造和设计一种好算法,而好算法在很大限度上取决于描述实际问题数据构造。 2.数据是信息载体。数据元素是数据基本单位。一种数据元素可以由若干个数据项构成,数据项是具备独立含义最小标记单位。数据对象是具备相似性质数据元素集合。 3.数据构造指是数据元素之间互有关系,即数据组织形式。 数据构造普通涉及如下三方面内容:数据逻辑构造、数据存储构造、数据运算 ①数据逻辑构造是从逻辑关系上描述数据,与数据元素存储构造无关,是独立于计算机。 数据逻辑构造分类:线性构造和非线性构造。 线性表是一种典型线性构造。栈、队列、串等都是线性构造。数组、广义表、树和图等数据构造都是非线性构造。 ②数据元素及其关系在计算机内存储方式,称为数据存储构造(物理构造)。 数据存储构造是逻辑构造用计算机语言实现,它依赖于计算机语言。 ③数据运算。最惯用检索、插入、删除、更新、排序等。 4.数据四种基本存储办法:顺序存储、链接存储、索引存储、散列存储 (1)顺序存储:普通借助程序设计语言数组描述。 (2)链接存储:普通借助于程序语言指针来描述。 (3)索引存储:索引表由若干索引项构成。核心字是能唯一标记一种元素一种或各种数据项组合。 (4)散列存储:该办法基本思想是:依照元素核心字直接计算出该元素存储地址。 5.算法必要满足5个准则:输入,0个或各种数据作为输入;输出,产生一种或各种输出;有穷性,算法执行有限步后结束;拟定性,每一条指令含义都明确;可行性,算法是可行。 算法与程序区别:程序必要依赖于计算机程序语言,而一种算法可用自然语言、计算机程序语言、数学语言或商定符号语言来描述。当前惯用描述算法语言有两类:类Pascal和类C。 6.评价算法优劣:算法"对的性"是一方面要考虑。此外,重要考虑如下三点: ①执行算法所耗费时间,即时间复杂性; ②执行算法所耗费存储空间,重要是辅助空间,即空间复杂性; ③算法应易于理解、易于编程,易于调试等,即可读性和可操作性。

自考数据结构 试题及答案解析

2015年lO月高等教育自学考试全国统一命题考试 数据结构试卷 (课程代码02331) 本试卷共8页。满分l00分。考试时间l50分钟。 考生答题注意事项: 1.本卷所有试题必须在答题卡上作答。答在试卷上无效,试卷空白处和背面均可作草稿纸. 2.第一部分为选择题。必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。 3.第二部分为非选择题。必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。 4.合理安排答题空间.超出答题区域无效。 第一部分选择题 一、单项选择题(本大题共l5小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡” 的相应代码涂黑。未涂、错涂或多涂均无分。

1.下列选项中,不属于线性结构的是 A.网 B.栈 C.队列 D.线性表 2.长度为n的顺序表,删除位置i上的元素(0≤i≤n一1),需要移动的元素个数为 A.n—i B.n—i—l C.i D.i+1 3.栈采用不同的存储方式时,下列关于出栈过程的叙述中,正确的是 A.顺序栈需要判定栈空,链栈也需要判定 B.顺序栈需要判定栈空,而链栈不需要判定 C.顺序栈不需要判定栈空,而链栈需要判定 D.顺序栈不需要判定栈空,链栈也不需要判定 4.若一个栈以数组V[0..n-1]存储,初始栈顶指针top为n,则x入栈的正确操作是 A.top=top+1;V[top]=x B.V[top]=x;top=top+1 C.top=top一1;V[mp]=x D.V[top]=x;top=top—l 5.在二维数组a[9][10]中:每个数组元素占用3个存储空间,从首地址SA开始按行优先

相关文档
最新文档