第一:复杂度估算和排序算法(上)html
1) 时间复杂度和空间复杂度,linux
2)认识对数器,面试
0,有一个你想要测试的方法a 1,实现一个绝对正确的可是复杂度很差的方法b 2,实现一个随机样本产生器 3,实现比对的方法 4,把方法a和方法b比对不少次来验证方法a是否正确 5,若是有一个样本使得比对出错,打印样本分析是哪一个方法出错 6,当样本数量不少时比对测试依然正确,能够肯定方法a已经正确
3)冒泡排序算法
4)选择排序segmentfault
5)插入排序数组
6)如何分析递归过程的时间复杂度,代入法,迭代法,公式法,母函数法,差分方程法,递归树法。数据结构
7)归并排序ide
8)小和问题,将此问题跟归并排序结合起来。函数
9 ) 快排问题测试
第二:复杂度估算和排序算法(下)
1)荷兰国旗问题,有随机求 012210这样的组合队列,将数据进行排序实现00001111222这样的排序,桶排
2)随机快速排序
3)堆结构与堆排序
5)认识比较器
6)桶排序
7)计数排序
8)基数排序
9)数组排序后的最大差值问题
10)排序算法在工程中的应用,
第三:章栈、队列、链表、数组和矩阵结构
1)栈结构,出栈,入栈
2)队列结构,火车隧道
3)链表结构,单链表,双链表,链表的翻转。
4)数组结构,简单的数组结构
5)矩阵结构
6)二分搜索的扩展,
第四:二叉树结构
1)二叉树结构
2)二叉树的递归与非递归遍历
3)打印二叉树
4)判断搜索二叉树
5)判断彻底二叉树
6)判断平衡二叉树
7)折纸问题
8)二叉树节点的前驱节点与后继节点
9)二叉树的序列化和反序列化
第五:和哈希函数有关的三个结构与并查集
1)哈希函数与哈希表
2)布隆过滤器详解
3)一致性哈希结构
4)并查集结构与应用(岛问题)
第六:章图算法
1)图结构的表示方法
2)图的深度优先遍历与宽度优先遍历
3)拓扑排序问题
4)最小生成树问题
5)单源最短路径问题
第七:前缀树、堆结构和贪心算法
1)前缀树
2)堆结构的扩展与应用
3)介绍贪心算法及其相关题目
4)在面试中如何快速的尝试出贪心策略
第八:暴力递归到动态规划
1)递归
2)动态规划
3)如何把暴力递归套路的变成动态规划
算法高级:
第一:KMP算法和Manacher算法
1)KMP算法及其扩展面试题目
2)Manacher算法及其扩展面试题目
第二:窗口内最大值的更新结构和单调栈结构
1)窗口内最大值的更新结构
2)单调栈结构
第三:Morris遍历和sortedMap
1)二叉树的Morris遍历
2)跳表结构
3)AVL树和红黑树结构,平衡二叉树跟红黑树
【今日头条、拼多多题目】
分类算法的理解
聚类算法的理解
特征选择算法的理解
集成提高的理解
【面试题目】
大数据题目