电大《数据结构》学习笔记.docx
- 文档编号:10034812
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:75
- 大小:47.29KB
电大《数据结构》学习笔记.docx
《电大《数据结构》学习笔记.docx》由会员分享,可在线阅读,更多相关《电大《数据结构》学习笔记.docx(75页珍藏版)》请在冰点文库上搜索。
电大《数据结构》学习笔记
单元1绪论
数据结构中,与所使用的计算机无关的是数据的()。
答案:
逻辑结构
组成数据的基本单位是()。
答案:
数据元素
研究数据结构就是研究()。
答案:
数据的逻辑结构和存储结构以及其数据在运算上的实现
在数据结构中,从逻辑上可以把数据结构分成()。
答案:
线性结构和非线性结构
数据结构是一门研究计算机中()对象及其关系的科学。
答案:
非数值运算
下列说法不正确的是()。
答案:
数据项可由若干个数据元素构成
设有如下遗产继承规则:
丈夫和妻子可以互相继承遗产,子女可以继承父亲和母亲的遗
产,子女间不能相互继承,则表示该遗产继承关系最合适的数据结构应该是()结构。
答案:
图状算法的时间复杂度与()有关。
选择一项:
答案:
算法本身
算法分析的两个主要方面是()。
答案:
时间复杂性和空间复杂性
数据的存储结构包括数据元素的表示和()。
答案:
数据元素间关系的表示
数据元素是数据的最小单位()。
正确的答案是“错”。
数据的逻辑结构是指数据的各数据项之间的逻辑关系()。
正确的答案是“错”。
算法的优劣与算法描述语言无关,但与所用计算机有关()。
正确的答案是“错”。
算法是在数据结构的基础上对特定问题求解步骤的一种描述,也是若干条指令组成的优先
序列()。
正确的答案是“对”。
算法可以用不同的语言描述,如果用C语言等高级语言来描述,则算法实际上就是程序了()。
正确的答案是“错”。
程序一定是算法()。
正确的答案是“错”。
数据的物理结构是指数据在计算机内的实际存储形式()。
正确的答案是“对”。
数据结构中评价算法的两个重要指标是时间复杂度和空间复杂度()。
正确的答案是“对”。
在顺序存储结构中,有时也存储数据结构中元素之间的关系()。
正确的答案是“错”。
单元2线性表
线性表的顺序存储比链式存储最与利于进行()操作。
答案:
表尾插入或删除
链表不具备的特点是()。
答案:
可随机访问任一结点
向一个有127个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动
()个元素。
答案:
63.5
在一个长度为n的顺序存储线性表中,向第i个元素(1≤i≤n)之前插入一个新元素时,需
要依次后移()个元素。
答案:
n-i+1
在一个长度为n的顺序存储线性表中,删除第i个元素(1≤i≤n),需要前移()个元
素。
答案:
n-i
一个顺序存储线性表的第一个元素的存储地址是90,每个元素的长度是2,则第6个元素的存储地址是()。
答案:
100
用链表表示线性表的优点是()。
答案:
便于插入和删除
带头结点的链表为空的判断条件是()(设头指针为head)。
答案:
head->next==NULL
非空的单向循环链表的尾结点满足()(设头指针为head,指针p指向尾结点)。
选择一项:
答案:
p->next==head
在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接
后继,现要删除q所指结点,可用语句()。
答案:
p->next=q->next
线性表在链式存储中各结点之间的地址()。
答案:
连续与否无所谓
有关线性表的正确说法是()。
答案:
除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后
继若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最省时间。
答案:
顺序表
在单链表中,若*p不是尾结点,在其后插入*s结点的操作是()。
答案:
s->next=p->next;p->next=s;
在一个长度为n的顺序表中为了删除第5个元素,由第6个元素开始从后到前依次移动了15个元素。
则原顺序表的长度为()。
答案:
20
对于一个具有n个结点的单向链表,在给定值为x的结点之后插入一个新结点的时间复杂度为()。
答案:
O(n)
设顺序存储的线性表长度为n,对于插入操作,设插入位置是等概率的,则插入一个元素平均移动元素的次数为()。
答案:
n/2
线性表的顺序结构中,()。
答案:
逻辑上相邻的元素在物理位置上也相邻
以下说法中不正确的是()。
答案:
已知单向链表中任一结点的指针就能访问到链表中每个结点
以下表中可以随机访问的是()。
答案:
顺序表
设链表中的结点是NODE类型的结构体变量,且有NODE*p;为了申请一个新结点,并
由p指向该结点,可用以下语句()。
答案:
p=(NODE*)malloc(sizeof(NODE));
设head为非空的单向循环链表头指针,p指向链表的尾结点,则满足逻辑表达式()
的值为真。
答案:
p->next==head
顺序存取的线性表乐意随机存取()。
正确的答案是“对”。
由于顺序存储要求连续的存储区域,所以在存储管理上不够灵活()。
正确的答案是“对”。
线性表中的元素可以是各种各样的,但同一线性表中的数据元具有相同的特性,因此是属
于同一数据对象()。
正确的答案是“对”。
在线性表的顺序存储结构中,逻辑上相邻的两个元素但是在物理上位置并不一定是相邻的
()。
正确的答案是“错”。
在单链表中,任何两个元素的存储位置之间都有固定的联系,因为可以从头结点进行查找
任何一个元素()。
正确的答案是“错”。
线性表的链式存储结构优于顺序存储结构()。
正确的答案是“错”。
在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该袁术的位置有关
()。
正确的答案是“对”。
在单链表中,要取得某个元素,只要知道该元素的指针机可,因此单链表是随机存取的存
储结构。
()
正确的答案是“错”。
顺序存储方式只能用于存储线性结构。
()
正确的答案是“错”。
顺序存储方式的有点是存储密度大,且插入、删除运算效率高。
()
正确的答案是“错”。
单元3栈和队列
一个顺序栈一旦被声明,其占用空间的大小()。
答案:
已固定
链栈和顺序栈相比,有一个比较明显的缺点,即()。
答案:
通常不会出现栈满的情况
用单链表表示的链式队列的队头在链表的()位置。
答案:
链头
在解决计算机主机与打印机之间速度不匹配问题时通常设置一个打印数据缓冲区,主机将
要输出的数据依次写入缓冲区中,而打印机则从缓冲区中取出数据打印,该缓冲区应该是
一个()结构。
答案:
队列
循环队列A[m]存放其元素,用front和rear分别表示队头及队尾,则循环队列满的条件
是()。
答案:
(rear+1)%m=front
在一个栈顶指针为top的链栈中,将一个p指针所指的结点入栈,应执行()。
答案:
p->next=top;top=p;
在一个栈顶指针为top的链栈中删除一个结点时,用x保存被删结点的值,则执行
()。
答案:
x=top->data;top=top->next;
在一个链队中,设front和rear分别为队首和队尾指针,则插入p所指结点时,应执行
()。
答案:
rear->next=p;rear=p;
在链队列中,f和r分别为队头和队尾指针,要把s所指结点入队,应执行()。
答案:
r->next=s;r=s;
设top是一个链栈的栈顶指针,栈中每个结点由一个数据域data和指针域next组成,设
用x接收栈顶元素,则取栈顶元素的操作为()。
答案:
x=top->data;
一个队列的入队序列是2,4,6,8,则队列的输出序列是()。
答案:
2,4,6,8
一个栈的进栈序列是5,6,7,8,则栈的不可能的出栈序列是()。
(进出栈操作可
以交替进行)
答案:
5,8,6,7
栈的插入删除操作在()进行。
答案:
栈顶
栈和队列的相同点是()。
答案:
逻辑结构与线性表相同,都是操作规则受到限制的线性表
以下说法正确的是()。
答案:
栈的特点是先进后出,队列的特点是先进先出
设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,
front和rear分别为链队列的头指针和尾指针。
设p指向要入队的新结点(该结点已被赋
值),则入队操作为()。
答案:
rear->next=p;rear=p;
设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,
front和rear分别为链队列的头指针和尾指针,要执行出队操作,用x保存出队元素的值,
p为指向结点类型的指针,可执行如下操作:
p=front->next;x=p->data;然后指行()。
答案:
front->next=p->next;
以下说法不正确的是()。
答案:
顺序队列中,当尾指针已经超越队列存储空间的上界,则一定是队列已满
一个递归算法必须包括()。
答案:
终止条件和递归部分
假定一个链式队列的队头和队尾指针分别为front和rear,则判断队空的条件为()。
答案:
front=rear
向顺序栈中压入新元素时,应当()。
答案:
应当先移动栈顶指针,再存入元素
判断一个循环队列Q(最多元素为m)为满的条件是()。
答案:
Q->front==(Q->rear+1)%m
判断栈满(元素个数最多n个)的条件是()。
答案:
top=-1
队列的删除操作是在()。
答案:
队前
一个队列的入队序列是a,b,c,d,按该队列的可能输出序列使各元素依次入栈,该栈的可能输
出序列是()。
(进栈出栈可以交替进行)。
答案:
d,c,b,a
单元4串
以下陈述中正确的是()。
答案:
串是一种特殊的线性表
设有两个串p和q,其中q是p的子串,q在p中首次出现的位置的算法称为()。
答案:
匹配
串是()。
答案:
有限个字符的序列
串的长度是指()。
答案:
串中所含字符的个数
在C语言中,存储字符串“ABCD”需占用()字节。
答案:
5
下面关于串的叙述中,不正确的是()。
答案:
空串是由空格构成的串
串与普通的线性表相比较,它的特殊性体现在()。
答案:
数据元素是一个字符
空串与空格串()。
答案:
不相同
两个字符串相等的条件是()。
答案:
两串的长度相等,并且对应位置上的字符相同
在实际应用中,要输入多个字符串,且长度无法预定。
则应该采用()存储比较合适
()。
答案:
链式
下列关于串的叙述中,不正确的是()。
答案:
空串是由空格构成的串
串是一种特殊的线性表,其特殊性体现在()。
答案:
数据元素是一个字符
串函数StrCmp(“abA”,”aba”)的值为()。
答案:
-1
在C语言中,存储字符串“ABCD”需要占用()字节。
答案:
5
设主串为“ABcCDABcdEFaBc”,以下模式串能与主串成功匹配的是()。
答案:
Bcd
10.字符串a1=“AEIJING”,a2=“AEI”,a3=“AEFANG”,a4=“AEFI”中最大的是()。
答案:
a1
字符串〝abcd321ABCD〞的子串是()。
答案:
〝21ABC〞
数组a经初始化chara[]=“English”;a[1]中存放的是()。
答案:
字符n
空串的长度为()。
答案:
0
单元5数组和广义表
一维数组A采用顺序存储结构,每个元素占用4个字节,第8个元素的存储地址为120,
则该数组的首地址是()。
答案:
92
稀疏矩阵采用压缩存储的目的主要是()。
答案:
减少不必要的存储空间的开销
一个非空广义表的表头()。
答案:
可以是子表或原子
常对数组进行的两种基本操作是()。
答案:
查找和修改
在二维数组A[8][10]中,每一个数组元素A[i][j]占用3个存储空间,所有数组元素相继存
放于一个连续的存储空间中,则存放该数组至少需要的存储空间是()。
答案:
240
设有一个18阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到
一维数组B中(数组下标从1开始),则矩阵中元素A10,8在一维数组B中的下标是
()。
答案:
53
广义表((a))的表尾是()。
答案:
0
设有一个10阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到
一维数组B中(数组下标从1开始),则矩阵中元素A8,5在一维数组B中的下标是
()。
答案:
33
设广义表类((a,b,c)),则L的长度和深度分别为()。
答案:
1和2
广义表(a,a,b,d,e,((i,j),k))的表头是________。
答案:
a
广义表的(a,d,e,(i,j),k)表尾是________。
答案:
(d,e,(i,j),k)
稀疏矩阵的压缩存储方式通常有两种,即()。
答案:
三元组和十字链表
设有一个对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到一维数
组B中(数组下标从1开始),B数组共有55个元素,则矩阵是()阶的对称矩阵。
答案:
10
设有一个18阶的对称矩阵A,采用压缩存储的方式,将其下三角部分以行序为主序存储到
一维数组B中(数组下标从1开始),则数组中第53号元素对应于矩阵中的元素是
()。
答案:
a10,8
对稀疏矩阵进行压缩存储,可采用三元组表,一个10行8列的稀疏矩阵A共有73个零元
素,其相应的三元组表共有()个元素。
答案:
7
广义表((a))的表尾是()。
答案:
()
广义表(a,(a,b),d,e,((i,j),k))的长度和深度分别是()。
答案:
5,3
单元6树和二叉树
假定一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为()。
答案:
16
已知某二叉树的后续遍历序列是dabec,中序遍历是debac,则它的先序遍历序列是
()。
答案:
cedba
二叉树第k层上最多有()个结点。
答案:
2
k-1
二叉树的深度为k,则二叉树最多有()个结点。
答案:
2
k-1
设某一二叉树先序遍历为abdec,中序遍历为dbeac,则该二叉树后序遍历的顺序是
()。
答案:
debca
设某一二叉树中序遍历为badce,后序遍历为bdeca,则该二叉树先序遍历的顺序是
()。
答案:
abcde
树最适合于用来表示()。
答案:
元素之间有包含和层次关系的数据
一棵非空的二叉树,先序遍历与后续遍历正好相反,则该二叉树满足()。
答案:
只有一个叶子结点
设a,b为一棵二叉树的两个结点,在后续遍历中,a在b前的条件是()。
答案:
a在b左方
权值为{1,2,6,8}的四个结点构成的哈夫曼树的带权路径长度是()。
答案:
29
如果将给定的一组数据作为叶子数值,所构造出的二叉树的带权路径长度最小,则该树称
为()。
答案:
哈夫曼树
下列有关二叉树的说法正确的是()。
答案:
二叉树中度为0的结点的个数等于度为2的结点的个数加1
二叉树是非线性数据结构,所以()。
答案:
顺序存储结构和链式存储结构都能存储
任何一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序()。
答案:
不发生改变
一棵有n个结点采用链式存储的二叉树中,共有()个指针域为空。
答案:
n+1
设一棵哈夫曼树共有n个非叶结点,则该树有()个叶结点。
答案:
n+1
一棵完全二叉树共有5层,且第5层上有六个结点,该树共有()个结点。
答案:
21
在一棵二叉树中,若编号为i的结点是其双亲结点的右孩子,则双亲结点的顺序编号为
()。
答案:
i/2向下取整
一棵采用链式存储的二叉树中有n个指针域为空,该二叉树共有()个结点。
答案:
n-1
一棵结点数31 答案: 18 设一棵哈夫曼树共有2n+1个结点,则该树有()个非叶结点。 答案: n 在一棵具有35个结点的完全二叉树中,该树的深度为()。 答案: 6 在一棵二叉树中,若编号为i的结点存在左孩子,则左孩子结点的顺序编号为()。 答案: 2i 在一棵具有n个结点的二叉树的第i层上,最多具有()个结点。 答案: 2i-1 以二叉链表作为二叉树的存储结构,在有n个结点的二叉链表中(n>0),链表中空链域 的个数为()。 答案: n+1 将含有150个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号, 根结点的编号为1,则编号为69的结点的双亲结点的编号为()。 答案: 34 有n个叶子结点的哈夫曼树的结点总数为()。 答案: 2n-1 下面关于二叉树的结论正确的是()。 答案: 二叉树中,度为0的结点个数等于度为2的结点个数加1 单元7图 在一个图G中,所有顶点的度数之和等于所有边数之和的()倍。 答案: 2 邻接表是图的一种()。 答案: 链式存储结构 如果从无向图的任一顶点出发进行一次深度优先搜索即可访问所有顶点,则该图一定是 ()。 答案: 连通图 下列有关图遍历的说法不正确的是()。 答案: 非连通图不能用深度优先搜索法 无向图的邻接矩阵是一个()。 答案: 对称矩阵 图的深度优先遍历算法类似于二叉树的()遍历。 答案: 先序 已知下图所示的一个图,若从顶点V1出发,按深度优先搜索法进行遍历,则可能得到的一 种顶点序列为()。 答案: V1V2V4V8V5V3V6V7 已知如图2所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的 一种顶点序列为()。 答案: abcefd 已知如图3所示的一个图,若从顶点a出发,按深度优先搜索法进行遍历,则可能得到的 一种顶点序列为()。 答案: aedfcb 一个具有n个顶点的无向完全图包含()条边。 答案: n(n-1)/2 已知如图4所示的一个图,若从顶点a出发,按深度优先搜索法进行遍历,则可能得到的 一种顶点序列为()。 答案: aedfcb 已知如图5所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的 一种顶点序列为()。 答案: abcefd 已知如图6所示的一个图,若从顶点V1出发,按深度优先搜索法进行遍历,则可能得到的 一种顶点序列为()。 答案: V1V2V4V8V5V3V6V7 已知如图7所示的一个图,若从顶点V1出发,按深广优先搜索法进行遍历,则可能得到的 一种顶点序列为()。 答案: V1V2V3V4V5V6V7V8 采用邻接表存储的图的广度优先搜索遍历算法类似于二叉树的()。 答案: 层次遍历 下面结论中不正确的是()。 答案: 一个图按广度优先搜索法遍历的结果是唯一的 下面说法不正确的是()。 答案: 图的深度遍历不适用于有向图 任何一棵无向连通图的最小生成树()。 答案: 有一棵或多棵 在一个具有n个顶点的无向图中,要连通全部顶点至少需要()边。 答案: n-1 采用邻接表存储的图的深度优先搜索遍历算法类似于二叉树的()。 答案: 先序遍历 单元8查找 线性表只有以()方式存储,才能进行折半查找。 答案: 顺序 有序表为{2,4,10,13,33,42,46,64,76,79,85,95,120},用折半查找值为 85的结点时,经()次比较后成功查到。 答案: 4 采用顺序查找法对长度为n(n为偶数)的线性表进行查找,采用从前向后的方向查找。 在等概率条件下成功查找到前n/2个元素的平均查找长度为()。 答案: (n+2)/4 对二叉排序树进行()遍历,可以使遍历所得到的序列是有序序列。 答案: 中序 以下说法正确的是()。 答案: 二叉排序树中任一棵子树都是二叉排序树。 对线性表进行二分查找时,要求线性表必需()。 答案: 以顺序方式存储,且结点按关键字有序排列 使用折半查找法时,要求查找表中各元素的键值必须是()排列的。 答案: 递增或递减 已知一个有序表为{11,22,33,44,55,66,77,88,99},则顺序查找元素55需要比较() 次。 答案: 5 有一个长度为10的有序表,按折半查找对该表进行查找,在等概率情况下查找成功的平 均比较次数为()。 答案: 29/10 采用分块查找时,若线性表中共有324个元素,查找每个元素的概率相同,假设采用顺序 查找来确定结点所在的块,每块应分()个结点最佳。 答案: 18 如果要求一个线性表既能较快地查找,又能动态适应变化要求,可以采用()查找方 法。 答案: 分块 关于哈希查找的说法正确的是()。 答案: 哈希函数的好坏要根据具体情况而定 采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为()。 答案: (n+1)/2 采用分块查找时,数据的组织方式为()。 答案: 把数据分城若干块,块内数据不必有序,但块间必需有序,每块内最大(或最小) 的数据组成索引表 假设在有序线性表A[1..20]上进行折半查找,则比较五次查找成功的结点数为()。 答案: 5 单元9排序 设有1000个无序的元素
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 电大 学习 笔记