作者介绍:断律绎殇(笔名),六年码龄,四年算法竞赛经验(主要是acm和天梯赛),曾获两次省一及其他奖项若干。(避免被杠还是多说几句:以上介绍仅证明本人具有一定算法能力,算不上大佬,比我厉害的人还有很多很多,当初亚洲区域赛清华的队伍坐我们旁边,我们还在讨论题目翻译旁边在讨论晚上吃什么的时候,我就清晰地认识到了自己只是acm打铁蒟蒻)
前言
最近两年,行业内卷严重,算法慢慢成为面试的高频问题。本文将列出一份大致的学习路线,全部练完能够应付大多数的面试场景,同时也能提高在高压状态下编程和思考、解决问题的能力。
引用b站大佬CodeSheep的经典名言:
徒手撕源码 光脚造轮子 闭眼深优化 吊打面试官
学习的收获
- get新技能-算法能力;
- 追求高性能、低开销解决问题的思维习惯;
- 培养思考问题的全面性,养成少写甚至不写bug的好习惯;
- 其他不可言传的隐性成长...
- 吊打面试官
学习路线
tips
算法学习推荐使用c++语言练习,有其他语言基础学c一般一下午就能学会,后端大佬如果实在不习惯可以使用java。
模拟、枚举和贪心
模拟
P2670 [NOIP2015 普及组] 扫雷游戏 - 规则
P1563 [NOIP2016 提高组] 玩具谜题 - 记录
枚举
POJ 2965 The Pilots Brothers' refrigerator
贪心
递归、分治
二分、三分、01分数规划
二分查找
二分答案
NC24017 [USACO 2016 Jan S]Angry Cows
三分
01分数规划
栈、队列
栈
队列
双端队列
并查集
P1396 营救 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
扩展域并查集
搜索
DFS
BFS
双向广搜
搜索剪枝
递推
线性dp
背包问题
01背包
完全背包
多重背包
分组背包
DP
区间dp
树形dp
[USACO10MAR] Great Cow Gathering G
[USACO08JAN]Cell Phone Network G
状压dp
图论
最短路
最短路图
差分约束
最小生成树
数论
组合数学:
排列组合
容斥
线性代数
概率题
数论分块
线段树
树状数组
LCA模板题
DFS序
树上倍增
树链剖分
持续更新中...
本文正在参加「金石计划 . 瓜分6万现金大奖」