目前感觉比较好的刷题方式就是按照《算法笔记》的框架进行刷题。尽量将每种题型的模板背下来,经常默写。下面给出框架。
1.基础
1.1 输入输出
CSDN:笔试面试中的输入输出
公众号:笔试面试中的输入输出
1.2 数学问题
CSDN:常见数学问题
公众号:常见数学问题
1.3 Java 的常用集合
CSDN:常用集合
公众号:常用集合
2.数据结构
2.1 栈
CSDN:Java 中栈的使用
公众号:Java 中栈的使用
2.2 队列
CSDN:Java 中队列的使用
公众号:Java 中队列的使用
2.3 链表
CSDN:链表的操作
公众号:链表的操作
2.4 链表
CSDN:链表的操作
公众号:链表的操作
2.5 二叉树
2.5.1 二叉树的非递归前序、中序、后序遍历
CSDN:非递归前中后遍历
公众号:非递归前中后遍历
2.5.2 二叉树的层序遍历
CSDN:层序遍历
公众号:层序遍历
2.6 二叉搜索树
CSDN:二叉搜索树的基本操作
公众号:二叉搜索树的基本操作
2.7 并查集
CSDN:并查集的基本操作
公众号:并查集的基本操作
2.8 堆
CSDN:堆的定义和操作
公众号:堆的定义和操作
2.9 图
CSDN:图的存储和遍历
公众号:图的存储和遍历
3.算法
3.1 排序
CSDN:排序算法
公众号:排序算法
3.2 贪心
CSDN:贪心算法
公众号:贪心算法
3.3 二分
CSDN:二分的思想
公众号:二分的思想
3.4 递归
CSDN:递归算法
公众号:递归算法
3.5 深度优先搜索(DFS)
CSDN:深度优先搜索(DFS)
公众号:深度优先搜索(DFS)
3.6 广度优先搜索(BFS)
CSDN:广度优先搜索(BFS)
公众号:广度优先搜索(BFS)
3.7 图的最短路径
CSDN:Dijkstra算法(Java)
公众号:Dijkstra算法(Java)
3.8 拓扑排序
CSDN:拓扑排序
公众号:拓扑排序