30 分钟
求职冲刺

常见算法题

掌握高频面试算法题

  • 双指针和滑动窗口
  • 二分查找
  • 递归和动态规划入门

双指针

示例代码(可运行)

二分查找

示例代码(可运行)

动态规划入门:斐波那契

示例代码(可运行)
💡刷题建议

先刷LeetCode热题100,按专题刷:数组→链表→哈希→双指针→二分→栈队列→树→DP。每题先自己想15分钟,再看题解。用Python刷效率最高。

预测输出
print(binary_search if False else "ok")
找 Bug二分查找常犯的边界错:right得设成len-1,循环条件写l<=r,不然会漏掉要查的元素。
def bs(a,t): l,r=0,len(a) while l<r: m=(l+r)//2 if a[m]==t: return m
填空题填写空白处的代码
left, right = 0, len(nums) 1
选择题

双指针适合什么问题?

资深工程师加餐

底层原理 · 大厂视角 · 工程经验,点卡片展开

递归必须有基线条件和向基线收敛的趋势,否则无限递归。动态规划三要素:最优子结构、重叠子问题、状态转移方程。推荐路径:先写自顶向下的记忆化搜索(加缓存),跑通后再改写成自底向上的递推表格,最后尝试空间压缩。这样比硬憋 dp 数组容易得多。

挑战任务

算法挑战

简单+50 XP

实现回文字符串判断(双指针)。

算法挑战
2 个测试用例

课后作业

最长回文子串

中等+20 XP

用中心扩展法找最长回文子串。

最长回文子串
1 个测试用例