算法——总结梳理
算法有哪些很重要呢,这篇又是一个归纳总结~
1 算法最基础的知识
1. 时间复杂度
2. 空间复杂度
要会计算,比如最大复杂度,平均复杂度。
2 各种常见的算法
2.1 十大排序算法
太常见了,经常会在笔试面试中考到
- 简单排序:插入排序、选择排序、冒泡排序(必学)
- 分而治之排序:快速排序、归并排序(必学,快排还要关注基准线的选择)
- 分配排序:桶排序、基数排序
- 树状排序:堆排序(必学)
- 其他:计数排序(必学)、希尔排序
方法:书籍《算法(第四版)》、或者链接
2.2 图论算法
- 图的表示:邻接矩阵和邻接表(没学过)
- 遍历算法:深度优先搜索DFS和广度优先搜索BFS(必学)
- 最短路径算法:Floyd、Dijkstra(没听过)
- 最小生成树算法:Prim、Kruskal(没学过)
- 实际常用算法:配对、匈牙利算法(原理与应用)
- 拓展:中心性算法、社区发现算法(原理与应用)
还是看《算法(第四版)》
2.3 搜索与回溯算法
- 贪心算法(必学)
- 启发式搜索算法:A*寻路算法(了解)
- 地图着色算法、N皇后问题、最优加工顺序
- 旅行商问题
2.4 动态规划
- 树形DP:01背包问题
- 线形DP:最长公共子序列、最长公共子串
- 区间DP:矩阵最大值(和以及积)
- 数位DP:数字游戏
- 状态压缩DP:旅行商
套路学法
2.5 字符匹配算法
- 正则表达式
- 模式匹配:KMP、Boyer-Moore
https://mp.weixin.qq.com/s/7IZTuLrPSuxvFRqsv5PiXQ
2.6 流相关算法
- 等。。。
作者:无名之辈W
-------------------------------------------
努力的人一定会有糖吃的~
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦~
不论如何,我没有停下我的脚步,希望你也是。

浙公网安备 33010602011771号