- 学习方法
- 1.费曼学习法
- 2. 刷题
- (1)力扣
- (2) 牛客网
- (3)AcWing
- (4)洛谷
- 主要学习内容
- 1.算法
- 暴力
- DFS+BFS
- 动态规划DP
- 贪心
- 2.数据结构和集合
- STL和集合的使用
- 数据结构
- 4. 时间复杂度和空间复杂度
- 5.大数计算
- 6. 数学技巧
学习方法 1.费曼学习法
费曼学习法可以分为三个步骤
- 学习(B站大学)
- 学习后总结(csdn)
- 教别人(把你所学的能表达出来再去教别)
刷题是最关键的,怎么刷题去哪刷题?怎么针对性的刷题题?
(1)力扣力扣有专门的算法专题,从易到难
牛客竞赛网的小白月赛或者是高校赛是个不错的选择
B站大雪菜
洛谷的题单有针对性的刷题
DFS+BFS,动态规划和贪心是蓝桥杯一定要准备的算法
暴力暴力不用多讲,巧妙暴力骗分
DFS+BFS深度优先搜索DFS
典型题目
全排列
N皇后
广度优先搜索BFS
典型题目
走迷宫
典型题目
背包问题
路径数
典型题目
买卖股票的最佳时机
Java则需熟悉最基本的集合使用,也可以帮助我们解决不少问题
- Map
- Set
博客链接 Map&Set - Stack
- Queue
- List
- PriorityQueue
博客链接 优先级队列
- 线性表(顺序表+链表)
- 栈
- 队列
- 树(二叉树+二插搜索树+平衡二叉树)
博客连接 二叉树 - 优先级队列(堆)
博客链接 优先级队列 - 图(有向图和无向图)
一个算法好不好主要是看它的时间复杂度,空间是不要太过于关心的,用空间换取时间也是经常做的,下面博客有详细介绍
时间复杂度和空间复杂度
刷题是常遇到 long 都存不下的数,就可以用到BigInteger
Java提供了BigInteger大数提供了基本的运算方法
- 位运算
- 博弈论
- 数论
- 组合学
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)