算法专题:经典算法思想、LeetCode 高频题、字符串、链表、剑指 Offer 与排序
约 925 字大约 3 分钟
这份 算法专题 面向算法面试和基础能力训练,整理经典算法思想、常见数据结构 LeetCode 题目、字符串、链表、剑指 Offer 和排序算法。
适合谁看
- 正在准备校招、社招算法题的同学。
- 想按题型系统刷 LeetCode,而不是随机刷题的读者。
- 数据结构已经有基础,但缺少算法解题模板的后端开发者。
- 需要在面试前快速复盘字符串、链表、排序和常见算法思想的工程师。
学习重点
- 算法题要先按题型建立模板,再通过变体题训练迁移能力。
- 常见思想包括二分、双指针、滑动窗口、递归、回溯、贪心、动态规划、图搜索等。
- 字符串和链表题高频且容易考察边界处理。
- 排序算法不只要背复杂度,还要理解稳定性、原地排序和适用场景。
- 刷题复盘比刷题数量更重要,要记录错误原因、模板和边界条件。
建议阅读顺序
- 经典算法思想总结:先按思想建立算法题分类框架。
- 常见数据结构经典 LeetCode 题目推荐:结合数组、链表、栈、队列、树、图等结构刷题。
- 几道常见的字符串算法题:集中练习字符串匹配、回文、子串等高频题。
- 几道常见的链表算法题:掌握反转链表、快慢指针、环检测、合并链表等题型。
- 剑指 Offer 部分编程题 和 十大经典排序算法总结:用于面试前复盘。
核心文章
- 经典算法思想总结:整理常见算法思想和对应 LeetCode 题目。
- 常见数据结构经典 LeetCode 题目推荐:按数据结构类型推荐经典题目。
- 几道常见的字符串算法题:覆盖字符串处理、匹配、回文和子串相关问题。
- 几道常见的链表算法题:覆盖链表反转、合并、环检测、删除节点等高频题。
- 剑指 Offer 部分编程题:整理经典面试编程题。
- 十大经典排序算法总结:讲解冒泡、选择、插入、归并、快速、堆排序等经典排序算法。
高频问题
- 刷算法题应该按题型刷,还是按难度随机刷?
- 二分查找最容易错在哪里?如何处理边界?
- 双指针和滑动窗口分别适合什么问题?
- 回溯、DFS、动态规划有什么区别?
- 链表题为什么容易出错?如何处理虚拟头节点和边界?
- 字符串题常见解法有哪些?
- 常见排序算法的时间复杂度、空间复杂度和稳定性分别是什么?
- 面试前如何用有限时间复盘算法题?
