数据结构入门知识

1.绪论

算法+数据结构 = 程序设计

数据,数据元素,数据项,数据对象,数据结构,数据类型,原子类型,结构类型,抽象数据类型

四类基本结构:集合,线性结构,树形结构,图状结构

分类:线性结构与非线性结构

算法设计要求

时间复杂度,空间复杂度

2.线性表

线性表

顺序表示

直接前驱与直接后继

插入元素的平均移动次数n/2

删除元素的平均移动次数(n-1)/2

查找(n+1)/2

链式表示

头插法,尾插法

循环链表,双向链表,双向循环链表

3.栈与队列

栈,队列,双队列(双端队列)

顺序栈,链式栈

栈的应用:数制转换,括号匹配,表达式求值

输出受限双队列,输入受限双队列

链式队列(头指针,尾指针)

队列的顺序表示:f指向队头元素,r指向队尾元素后一空单元

(r+1)% maxleng==f 为满队列  

(f==r)为空队列

4.串

串,空串,空格串,字串

顺序存储,链式存储

5.数组与广义表

数组,广义表

矩阵压缩,三元组表,十字链接表

6.

树的层,深度

有序树,无序树

叶子的数目=度为2的结点数目+1

结点i的层号

完全二叉树(顺序二叉树)

顺序存储,链式存储

二叉链表,三叉链表,静态链表

线索二叉树 空指针域数: n*2-(n-1)=n+1,0表示前驱或后继,1表示左右孩子

树的存储结构:

双亲表示法/数组表示法/顺序表示法

孩子表示法/链接表表示法

孩子兄弟表示法/二叉树表示法/二叉链表

孩子链表表示法/单链表表示法

带双亲的孩子链表表示法

先根遍历,后根遍历

树的路径长度PL,树的带权路径长度WPL

哈夫曼树,哈夫曼编码

7.图

弧头,弧尾

完全图,有向完全图,网,子图,度

无向图:连通图,极大连通子图,连通分量,极小连通子图,生成树

有向图:强连通图,极大强连通子图,强连通分量

有向树:有且仅有一个顶点的入度为0,其余顶点的入度为1

图的存储结构

数组表示法/邻接矩阵

邻接表(无向图,有向图,有向网),逆邻接表(有向图),十字链表(有向图),邻接多重表(无向图)

DFS,BFS

最小生成树

prim算法(选点) kruskai算法(选边)

网的最小生成树,删除权最大的边

有向无环图(DAG),AOV网:以顶点表示活动,弧表示活动之间的优先关系的DAG

拓扑排序

AOE网:带权的有向无环图,关键路径,最短路径

Dijkstra算法,Floyd算法

9.查找

静态查找,动态查找,平均查找长度

静态查找表

顺序查找 成功:(n+1)/2    失败:n+1  平均:3(n+1)/4

折半查找  (n+1)/n*log2(n+1)-1

分块查找法  

动态查找表

二叉排序树(二叉查找树),平衡二叉树

哈希表,哈希函数,直接定址法,除留余数法,平方取中法,折叠法(边界折叠法,移位折叠法),数字分析法,随机数法

开放地址法(线性探查再散列,二次探查再散列),链地址法,建立公共溢出区,再哈希法

10.排序

插入排序:直接插入排序,折半插入排序,希尔排序

选择排序:简单选择排序,堆排序

归并排序

交换排序:冒泡排序,快排

基数排序

发布了23 篇原创文章 · 获赞 0 · 访问量 438

猜你喜欢

转载自blog.csdn.net/weixin_41605876/article/details/105250349