- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构A复习要点
第 1 章基础知识
算法与数据结构(数据结构概念、逻辑结构、数据存储结构示等) 数据抽象和抽象数据类型(数据结构规范、实现)
算法分析的基本方法(时间复杂性、空间复杂性)
第 2 章线性表
线性表的顺序和链接表示
理解在顺序表、单链表上实现线性表运算,能设计相应算法程序 顺序和链接表示的优缺点比较
第 3 章堆栈和队列
了解栈和队列的概念、特点
理解顺序栈和循环队列运算的实现
中缀表达式与后缀表达式的转换
后缀表达式计算
第 4 章数组和字符串
一般数组存储方法
三元组存储稀疏矩阵的方法
三元组表示的快速矩阵转置方法
字符串的概念、KMP 算法及其改进
第 5 章树
二叉树的定义、性质及二叉链表
理解二叉树的遍历算法(遍历结果、算法设计),能设计相应算法
程序
堆、堆的建立和调整
森林与二叉树的相互转换
哈夫曼树构造、哈夫曼编码、WPL 计算
第 6 章集合与搜索
理解有序表的顺序搜索算法
理解对半搜索算法
平均搜索长度的计算
第 7 章搜索树
理解二叉搜索树的定义、性质和插入、删除算法
二叉平衡树的定义及插入算法
B-树的定义和插入、删除方法
第 8 章散列表
掌握散列函数的相关概念
散列函数
解决冲突的开地址法(线性探查法,二次探查法、双散列法) 第 9 章图
图的基本概念和存储结构
理解图的算法(结果):遍历、拓扑排序、最小代价生成树、关键 路径、最短路径第 10 章内排序
三种简单排序算法、快速排序和两路合并排序算法、过程、结果 排序算法的时间复杂度(最好、最差,平均)、稳定性
第 11 章文件
文件的基本概念
初始游程的生成及竞赛树
考试样题
填空题
写出表达式 a*b+c/d 的后缀形式________。
已知一无向图 G=(V,E),其中 V={a,b,c,d,e},E={(a,b), (a,d), (a,c) (d,c),
(b,e)} ,现用某一种遍历方法从顶点 a 开始遍历图,得到的序列为 abecd,则采用的是__________遍历方法。
在顺序表长度为 n 中,平均在表中插入一个元素需要移动元素的个 数可用计算公式为________。
一个表长为 n 的线性表,其排序时间最快为。
选择题
具有 n 个顶点的有向完全图中,边的总数为()条。
A)n(n+1) B)n(n-1)
C)n(n-1)/2 D)n(n+1)/2
设一个栈输入序列是 1、2、3、4、5,则下列序列中不可能是栈的输 出序列是()。
A)32541 B)15432
C)14523 D )23145
二叉树的前序遍历为 EFHIGJK ,中序遍历序列为 HFIEJKG。该二 叉树根结点的右子树的根是()
A) E B) F
C) G D) H
对有 14 个元素的有序表 A[1]-A[14]作对半查找,查找元素 A[4]时的 被比较元素依次为()
A[1],A[2],A[3],A[4]
A[7],A[3],A[5],A[4]
A[1],A[2],A[7],A[4]
A[7],[A5],A[3],A[4]
设有一个长度为 100 且已排好序的表,用对半搜索进行查找,若搜 索不成功,则至少要比较______次。
()
A.9 B.8 C.7 D.6
简答题
用一维数组存放的一棵完全二叉树如图所示:
图
写出前序、中序、后序遍历该二叉树时访问结点的顺序。
图的邻接表表示一个给定的无向图。
给出从顶点 v1 开始,用深度优先搜索法进行遍历时的顶点序 列;
给出从顶点 v1 开始,用广度优先搜索法进行遍历时的顶点序 列。
解答题
设数据集合
d={1,12,5,8,3,10,7,13,9},试完成下列各题:
依次取 d 中各数据,构造一棵二叉搜索树 bt 。
画出在二叉树 bt 中删除 12 后的树结构。
对图的 3 阶 B-树,依次执行下列操作,画出各步操作的结果。 (1)插入 90 ;(2)插入 25;(3)插入 45
;(4)删除 60;
图
程序阅读题
图采用邻接表存储表示,边结点的结构如图所示,下面的程序是邻 接表类 LinkedGraph 的某个成员函
数 template class T
void LinkedGraphT::A()
{
int *in=new int[n]; for (int i=0;in;i++) in[i]=0;
ENodeT *p; for (i=0;in;i++)
{ p=a[i];
while (p)
{ in[p-adjvex]++;
p=p-nextarc;
}
}
coutendl;
for (i=0;in;i++) couti: in[i];endl;
delete []in; }
图 图
请说明该成员函数的作用是什么?
若有一个邻接表如图 8 所示,请给出执行该函数的结果?
文档评论(0)