吴师兄算法训练营|第一期

自己可以没有能力解决新题目,但自己做过的题目保证一定会做并且做对,具备这个能力足够通过所有的算法面试!

一、第一周:数组、栈和队列

第一周的内容是数组、栈和队列相关的内容,这部分内容比较简单,不会涉及到其它复杂的数据结构。

0、预习内容:什么是数组(点击链接前往阅读)

1)第一天课程内容

1、合并两个有序数组(点击前往学习)

2、颜色分类(点击前往学习)

3、部分排序(点击前往学习)

2) 第二天课程内容

4、有序数组的平方(点击前往学习)

5、盛最多水的容器(点击前往学习)

3)第三天课程内容

0、队列和栈的相关知识(点击前往学习)

1、有效的括号(点击前往学习)

2、用栈实现队列(点击前往学习)

4、最小栈(点击前往学习)

4)第三天课程内容(加餐,不布置作业)

1、滑动窗口的最大值(点击前往学习)

2、每日温度(点击前往学习)

3、接雨水(点击前往学习)

二、第二周:链表

链表的算法题在面试中出现的最频繁,但是难度并不是很大,所以第二周我们开始加快速度,每一天刷五题!

1)第一天课程内容

0、链表的相关知识与解题技巧第一版(点击前往学习)

1、反转链表(点击前往学习)

2、合并两个有序链表(点击前往学习)

3、反转链表II(点击前往学习)

4、移除链表元素(点击前往学习) 

5、K个一组翻转链表(点击前往学习)

2)第二天课程内容

1、两数相加(点击前往学习)

2、相交链表(点击前往学习)

3、分隔链表(点击前往学习)

4、回文链表(点击前往学习)

5、复制带随机指针的链表(点击前往学习)

3)第三天课程内容

1、环形链表II(点击前往学习)

2、奇偶链表(点击前往学习)

3、两数相加II(点击前往学习)

4、从尾到头打印链表(点击前往学习)

5、链表中倒数第 k 个节点(点击前往学习)

 

三、第三周:二叉树

1)第一天课程内容

1、二叉树的最大深度(点击前往学习)

2、二叉树的层序遍历(点击前往学习)

3、一套模板解决二叉树的前序、中序、后序遍历(点击前往学习)

4、根据前序与中序遍历序列构造二叉树(点击前往学习)

2)第二天课程内容

1、二叉树的右视图(点击前往学习)

2、路径之和II(点击前往学习)

3)第三天课程内容

1、将有序数组转换为二叉搜索树(点击前往学习)

2、把二叉搜索树转换为累加树(点击前往学习)

3、二叉树展开为链表(点击前往学习)

4、删除二叉搜索树中的节点(点击前往学习)

5、最近的公共祖先(点击前往学习)

 

四、第四周:动态规划

1)第一天课程内容:初识动态规划题目

1、爬楼梯(点击前往学习)

2、最大子序和(点击前往学习)

3、打家劫舍(点击前往学习)

2)第二天课程内容

1、最小路径和(点击前往学习)

2、编辑距离(点击前往学习)

3、零钱兑换(点击前往学习)

4、最长递增子序列(点击前往学习)

3)第三天课程内容

1、完全平方数(点击前往学习)

2、分割等和子集(点击前往学习)

 

五、第五周:贪心、回溯

1)第一天课程内容:贪心算法

1、分发饼干(点击前往学习)

2、柠檬水找零(点击前往学习)

2)第二天课程内容:贪心算法

1、移除k个数字(点击前往学习)

2、跳跃游戏(点击前往学习)

3)第三天课程内容:回溯

1、N皇后(点击前往学习)

 

六、第六周:哈希表、二分查找

1)第一天课程内容

1、两数之和(点击前往学习)

2)第二天课程内容

1、在排序数组中查找元素的第一个和最后一个位置(点击前往学习)

2、搜索旋转数组(点击前往学习)