数据结构知识点简单总结(考点)

第一章 绪论
1计算机解决问题的步骤:分析问题 设计相应的算法 编写程序调试并得到正确结果。、
2数据元素是数据的基本单位。
3数据结构包括:数据的逻辑结构 存储结构 数据的运算。
4逻辑结构的类型:集合 线性结构 树形结构 图形结构
5顺序存储结构优点:效率高
6链式存储结构优点:便于数据修改,与顺序存储结构相比,链式存储结构的主要缺点是存储空间的利用率低。
7抽象数据类型可用(D,S,P):D是数据对象,S是D上的关系集,P是数据运算的基本运算集。
8算法应该具有以下5个重要特征:1有穷性2确定性3可行性4有输入5有输出
9算法设计应满足的目标:1正确性2可使用性3可读性4健壮性5高效率与低存储量需求
10两种算法性能分析方法:1事后统计法2事前估算法。
11计算算法的频度T(n),时间复杂度-P19。
第二章 线性表
12线性表的顺序存储结构是把线性表中的所有元素按照其逻辑顺序依次存储到从计算机存储器中指定存储位置开始的一块连续的存储空间中,如图2.2所示,由于线性表中逻辑上相邻的两个元素在对应的顺序表中它们的存储位置也相邻,所以这种映射称为直接映射,线性表的顺序存储结构简称顺序表。
13 p-38,p-39
14单链表,在单链表中,假设每个节点的类型用LinkNode表示,它应包括存储单元素的数据域,这里用data表示,其类型用类型标识符ElemType表示,还包括存储后继节点位置的指针域,这里用next表示。LinkNode类型的声明如下。
15简答题 :在单链表中增加一个头节点的优点如下:1:单链表中首节点的插入和删除操作与其它节点一致,无需进行特殊处理。2:无论单链表是否为空都有一个头节点,因此统一了空表和非空表的处理过程。在单链表中,由于每个节点只包含有一个指向后继节点的指针,所以当访问过一个节点后只能接着访问它的后继节点,而无法访问它的前驱节点,因此在进行单链表结点的插入和删除时就不能简单地对该节点进行操作,还必须考虑其前后的节点。
16 p47
第三章 栈和队列
17栈和队列,以及串 都是特殊的线性表
18栈:是一种只能在一端进行插入或删除操作的线性表。表中允许进行插入删除操作的一端称为栈顶,表的另一端称为栈底
19采用链式存储结构的称为链栈,链栈的优点是不存在栈满上溢出的情况,规定栈的所有操作都是在单链表的表头进行的
20队列:队列在队尾进行插入,在队头进行删除。
21p-99
21队空的条件:q->frontq->rear
队满的条件:q->rear
Maxsize-1(data数组的最大下标)
元素e的进队操作:先将rear增1,然后将元素e放在data数组的rear位置。
出队操作:先将front增1,然后取出数组的front位置的元素
22 p100
第四章 串
23串是由零个或多个字符组成的有限序列
24串的顺序存储方式有:1种是每个字只存一个字符,这称为非紧缩格式(其存储密度小,另一种是每个字存放多个字符,这称为紧缩格式(其存储密度大)。
25p134暴力算法,p136kmp
第六章 数组和广义表
26 p169矩阵压缩
27稀疏矩阵中特殊元素的分布没有规律,即具有随机性。
28广义表是线性表的推广,是有限个元素的序列。
29 p 179 , 186
第七章 树和二叉树
30树的定义:树是由n个结点:(n>=0)组成的有限集合。
31树的表示方法: 树形表示法 文氏图表示法 凹入表示法 括号表示法
32 p193树的性质
33树的遍历:先根 后根 层次
34二叉树的性质 p199
35二叉树的遍历:先序 中序 后序 层次
36 p229二叉树的构造
37 p237 哈夫曼树!!!!!!!
第八章 图
38 p254
39 p281prime(变多点少稠密图,于点有关) Kruskal,Floyd dikstra
40拓扑排序 关键路径
第九章 查找
41折半查找的基本思路是设R[low…high]是当前的查找区间,首先确定该区间的中点位置mid=[(low+high)/2],然后将待查的k值与R[mid].key比较:
(1)若k=r[mid].key,则查找成功并返回该元素的逻辑序号。
(2)若k<R[mid].key,则该元素必定是在位置mid左边的子表R[low…mid-1]中,故新的查找区间是左字表R[low…mid-1]。
(3)若k>R[mid].key,则该元素必定是在位置mid的右子表R[mid+1…high]中,故新的查找区间是左子表R[mid+1…high].
42二叉排序树:若根节点的左子树非空,则左子树上的所有节点关键字均小于根结点关键字;
若根节点的右子树非空,则右子树上的所有结点均大于根节点关键字;
根节点的左右子树本身又各是一颗二叉排序树。
43 P346哈希表的查找 !!!!!!!!!!!!!!!!!!!
第十章 内排序
P370
44希尔排序实际上是一种分组插入方法。其基本思想是先取一个小于n的整数d1作为第一个增量,把表的全部元素分成d1个组吗,将所有距离为d1的倍数的元素放在同一个组中。
45冒泡排序:基本思想是通过无序区中相邻元素关键字间的比较和位置的交换使关键字最小的元素如气泡一样逐渐上升。
46堆排序:大根堆 小根堆 ;当序列满足ki<=k2i&&ki<=k2i+1 称为小根堆;当ki>=k2i&&ki>=k2*i+1 称为大根堆。 + p384例10.6
47不稳定的排序算法 : 希尔排序 快速排序 简单选择排序 堆排序

发布了67 篇原创文章 · 获赞 2 · 访问量 1862

猜你喜欢

转载自blog.csdn.net/weixin_44641254/article/details/103808455
今日推荐