算法考点总结


基础算法:

排序算法

冒泡排序 简单效率低 适合小规模数据

选择排序 每次选择未排序部分的最小值 交换到已排序部分的末尾

快速排序 高效的递归排序算法,通过基准值划分数据

归并排序 稳定的分治排序算法,数组分解为子数组排序后合并

查找算法

二分查找

哈希表 使用哈希函数快速查找元素

算法常用的思想和方法

枚举

递归

递推

贪心算法

分治算法

动态规划 线性dp 区间dp 树形dp

数据结构相关的算法:

栈和队列

栈 后进先出---括号匹配---表达式求值

队列 先进先出 ---广搜

树和二叉树

二叉树的遍历:前序、中序、后序、层次遍历

二叉树搜索:查找、删除、插入、、等操作

堆:完全二叉树--实现优先队列

图论算法

图的存储--邻接矩阵--邻接表

深度优先搜索--判断连通性 广度优先搜索--求最短路径

数论

欧几里得算法--最大公约数-最小公倍数

字符串匹配--kmp算法=暴力匹配