《数据结构与算法》—— 史上知识点最全的数据结构与算法思维导图
一个人对人民的服务不一定要站在大会上讲演或是做什么惊天动地的大事业,随时随地,点点滴滴地把自己知道的想到的告诉人家,无形中就是替国家播种垦植。 —— 傅雷
本文已经收录至我的GitHub,欢迎大家踊跃star 和 issues。
https://github.com/midou-tech/articles
点关注,不迷路❤️❤️❤️
image下面的数据结构知识点都掌握了,那说明你复习的很不错了。图片看不清可以加我微信,给你私发pdf文件。(偷偷告诉你,微信搜索 龙跃十二 关注公众号,点击联系作者即可获得作者微信)
今天翻消息,才发现粉丝想要一篇数据结构的总结,好东西当然是要分享出来的啦。
因为疫情,在家远程办公一段时间了。远程办公,那叫一个酸爽,以前还有上下班时间,现在好了,远程之后时刻在线。不过总算结束了远程办公时间,我来到杭州公司上班了。这不,赶紧马不停蹄的赶点东西出来,数据结构与算法知识点思维导图。
不要小看这张导图(这可是武功秘籍,秘籍已经有了,好好练,神功指日可待),只要你跟着这个导图去复习数据结构与算法,里面的知识点都搞透彻,面试数据结构问题基本难不倒你了。这么好的东西都送了,那还说什么,赶紧关注走一波,微信搜索 龙跃十二 即可无忧订阅。
数据结构与算法的重要性,我必须强调一波。不管你学什么编程语言,不管你从事前端、后台、算法、数据挖掘、机器学习、人工智能等岗位,数据结构与算法都是绕不过去的。语言无关性,岗位无关性。数据结构与算法在面试中也是频频出现,基本一场面试有50%以上的时间再问这方面的内容。就这,你还敢不学好数据结构与算法么?
image下面是导图的目录结构。
数据结构与算法
基本概念&术语
数据&数据元素&数据项&数据对象
逻辑结构&存储结构
-
逻辑结构
-
线性结构
-
线性表
-
一般线性表
- 线性表
-
特殊线性表
- 栈和队列
- 字符串
-
线性表的推广
- 数组
- 广义表
-
-
非线性结构
-
树结构
-
树
-
二叉树
-
图结构
-
有向图
-
无向图
-
-
存储结构
-
顺序存储结构
-
链式存储结构
数据类型&抽象数据类型
算法&算法分析
-
算法是为了解决某类问题而规定的一个有限长的操作序列
-
算法特性
-
有穷性
-
确定性
-
可行性
-
有效的输入
-
算法输出
-
评价算法优劣
-
正确性
-
可读性
-
健壮性
-
高效性
-
算法效率分析
-
算法的时间复杂度
-
算法的空间复杂度
线性结构
线性表
-
顺序表示
-
顺序表:逻辑&物理 次序上均相邻
-
链式表示
-
单链表
-
双链表
-
循环链表
-
链表和顺序表的比较
-
空间维度比较
-
时间维度比较
-
链表和顺序表的面试笔试题
-
线性表的推广
-
数组
-
广义表
栈
-
栈的定义&特性
-
后入先出
-
栈的表示&常用操作
-
顺序栈&链式栈
-
入栈&出栈
-
栈与递归
-
栈的应用
队列
-
队列的定义&特性
-
先入先出
-
队列的表示&常用操作
-
循环队列&链式队列
-
出队&入队
-
队列的应用
串
-
串的概念
-
串的结构
-
顺序存储
-
链式存储
-
串的匹配算法
-
BF算法
-
KMP算法
非线性结构
树
-
树的基本概念
-
二叉树
-
性质&存储结构
-
二叉树的遍历
-
线性二叉树
-
二叉树的建立
-
哈弗曼树
-
基本概念
-
构造算法
-
哈夫曼编码
-
AVL树
-
B树
图
-
概念
-
存储结构
-
邻接表
-
邻接矩阵
-
十字链表
-
邻接多重表
-
边集数组
-
遍历
-
深度优先遍历
-
广度优先遍历
-
应用
-
最小生成树
-
最短路径
-
拓扑排序
-
关键路径
高级数据结构
自顶向下的伸展树
红黑树
-
插入
-
插入时的旋转经常考
-
删除
确定性跳跃表
AA树
treap树
k-d树
配对堆
算法
查找
-
概念
-
线性表查找
-
顺序查找
-
二分查找
-
分块查找
-
树形查找
-
二叉树查找
-
AVL树查找
-
B-树
-
B+树
-
哈希查找
-
概念
-
冲突解决
排序
- 概念
- 冒泡排序
- 选择排序
- 插入排序
- 希尔排序
- 堆排序
- 归并排序
- 快速排序
- 基数排序
- 桶式排序
- 大型数据结构的排序
- 外部排序(非内存的方式排序)
图论算法
贪婪算法
分治算法
动态规划
随机化算法
回溯算法
这里面的知识点,基本都写过博客。我在刚开始学习数据结构的时候都在CSDN上写过相应的博客,不过现在看过去写的博客实在太有学生气了。所以如果你是正在学习数据结构与算法的相关知识点或者复习可以去看博客文章,百度搜索 龙跃十二 即可找到我的文章。
今天先把总结导图和导图的目录放上,接下来会陆续更新里面重要的知识点。关注我,重要知识不错过。