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