算法150
算法150
筑基期(进阶学习,第二阶段):11月15日 - 12月31日(1.5个月)
○ 目标:完成50道中等题(总题数150题),重点:树-中级、图、动态规划、贪心算法。
○ 题数里程碑:筑基初期120题、筑基中期140题、筑基圆满150题。
○ 时间分配:每周约7题,每天1题左右(中等题耗时较多,周末可集中)。
○ 多巴胺激励:每完成15题,奖励自己一次小享受(如咖啡、零食);完成筑基期,奖励一个晚上外出晚餐。
○ 建议:参加LeetCode周赛检验学习效果,复习错题。
📅 分享二:搜索与回溯——从框架到推荐系统的探索之旅
时间:对应你学习计划的第2个月末
核心目标:深入理解DFS和回溯,并将其与AI中的搜索和推荐联系起来。
第一部分:深度优先搜索(DFS)框架(20分钟)
现场编码:带领大家写出回溯算法的通用模板(循环 + 递归 + 撤销操作)。这是最重要的收获。
举例:用 #46 (全排列) 或 #78 (子集) 作为例子,一步步debug,展示“状态”是如何变化和回溯的。
第二部分:剪枝——算法的优化艺术(15分钟)
概念讲解:剪枝就是提前终止不可能产生结果的搜索路径,极大提升效率。
举例:在经典N皇后问题中,如何判断当前放置是否有效,无效则直接回溯。
第三部分:与AI的结合点——推荐系统中的探索与利用(15分钟)
概念链接:很多推荐算法(如Bandit算法)的核心是“探索(Exploration)”和“利用(Exploitation)”。
建立关联:“‘探索’就像我们的DFS,需要尝试新的可能性;而‘利用’就像剪枝,根据用户历史行为(信号)聚焦在最可能喜欢的物品上,避免在无效空间中的大规模搜索。”
Q&A(10分钟)
课后挑战(给你自己):在内部Wiki上分享你的笔记和代码链接,并附上一道LeetCode题(如 #104 或 #102)邀请同事们一起尝试。
概念
这里是内容。
规划方法论
这里是内容。