- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构期末复习题及部分答案解析
一.是非题
1. 数据结构可用三元式表示(D,S,P)。其中:D是数据对象,S是D上的关系,P是对D的基本操作集。
3 判断带头结点的非空循环单链表(头指针为L)中指针p所指结点是最后一个元素结点
的条件是:p-next==L。(t)
4 线性表的链式存储结构具有可直接存取表中任一元素的优点。P-next= S ; S- next = P-next;。(顺序弄反了)(f)
7 对于插入、删除而言,线性表的链式存储优于顺序存储。(t)
8. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。(f)
9. 栈和队列是操作上受限制的线性表。(t)
10. 队列是与线性表完全不同的一种数据结构。栈和队列是操作上受限制的线性表(f)
11. 队列是一种操作受限的线性表,凡对数据元素的操作仅限一端进行。
15 二叉树是一棵结点的度最大为二的树。B是一棵树,B′是对应的二叉树。则B的后根遍历相当于B′的后序遍历 后根遍历相当于中序遍历。(f)
19. 通常,二叉树的第i层上有2i-1个结点。应该为1~2i-1个(f)
20. 中序线索二叉树的优点是便于在中序下查找直接前驱结点和直接后继结点。(t)
21 二叉树的先序遍历序列中,任意一个结点均处在其孩子结点的前面。(t)
22 由树结点的先根序列和后根序列可以唯一地确定一棵树邻接多重表可以用以表示无向图,也可用以表示有向图。可从任意有向图中得到关于所有顶点的拓扑次序。AOE网中源点到汇点的最短路径。(f)
27 连通图G的生成树是一个包含G的所有n个顶点和n-1条边的子图。(f)
28 一个无向图的连通分量是其极大的连通子图。可以表示无向图,也可用以表示有向图。LOG2N)同阶。(f)
33 选用好的HASH函数可避免冲突。哈希函数有几种处理冲突的方法(f)
34 折半查找不适用于有序链表的查找。(t)
35. 对于目前所知的排序方法,快速排序具有最好的平均性能。O(nlogn),比快速排序好(t)
38 快速排序具有最好的平均时间性能,它在任何时候的时间复杂度都是O(n log n)。(f)
39. 字符串是数据对象特定的线性表。对于一棵m阶的B-树.树中每个结点至多有m 个关键字.除根之外的所有非终端结点至少有┌m/2┐个关键字。O(log2n)。(t)
43. 广义表的表头和表尾都是广义表。(f)
44 二维数组是其数据元素为线性表的线性表。(t)
选择题。
1 从逻辑上可以把数据结构分成( c )。
A. 动态结构和静态结构 B. 顺序组织和链接组织
C. 线性结构和非线性结构 D. 基本类型和组合类型
2 线性表L在( b )情况下适于使用链表结构实现。
A. 不需修改L的结构 B. 需不断对L进行删除、插入
C. 需经常修改L中结点值 D. L中含有大量结点
3 带头结点的单链表L为空的判断条件是 b 。
带头结点的循环链表L为空的判断条件是 。
A. L==null B. L-next==null
C. L-next==L D. L!=null
4 若顺序表中各结点的查找概率不等,则可用如下策略提高顺序查找的效率:若找到指定
的结点,将该结点与其后继(若存在)结点交换位置,使得经常被查找的结点逐渐移至
表尾。以下为据此策略编写的算法,请选择适当的内容,完成此功能。
顺序表的存储结构为:
typedef struct{
ElemType *elem; //数据元素存储空间,0号单元作监视哨
int length; //表长度
}SSTable;
int search_seq(SSTable ST,KeyType key)
{ //在顺序表ST中顺序查找关键字等于key的数据元素。
//若找到,则将该元素与其后继交换位置,并返回其在表中的位置,否则为0。
ST.elem[0].key=key;
i=ST.length;
while(ST.elem[i].key!=key) f ;
if( G )
{ST.elem[i]←→ST.elem[i+1];
e ;
}
return i;
}
A. i0 B. i=0 C. iST.length D. i=ST.length
E. i++ F. i--
文档评论(0)