本课程针对人群:有编程语言语法基础,需要应对北美算法面试轮。 主要知识点:链表、二叉树、二分法、BFS 与 DFS、数据结构设计、双指针、动态规划、贪心等
#### MLE/SDE/DS/AS/RS版本-第1讲 二分法及应用 二分法是什么? 如何使用二分在数组上查找? 如何在答案集上进行二分? #### MLE/SDE/DS/AS/RS版本-第2讲 双指针 双指针分为哪几类? 同向双指针可以用于什么场景? 相向双指针可以用于什么场景? 背向双指针可以用于什么场景? 双指针在两个数组上怎么操作? #### MLE/SDE/DS/AS/RS版本-第3讲 图与BFS BFS 是什么? BFS 适用什么样的题型? 什么是图和树? 如何使用邻接表和邻接矩阵来存图? BFS 有什么特殊的题型需要额外注意? #### MLE/SDE/DS/AS/RS版本-第4讲 递归与 DFS(上):搜索类 DFS 递归的几大要素是什么? 如何使用递归完成搜索? 在递归中可能的剪枝有哪些? #### MLE/SDE/DS/AS/RS版本-第5讲 递归与 DFS(下):分治类 DFS 如何在树上进行分治? 有哪些一般问题可以使用分治法? 排序问题和分治法有什么关系? #### MLE/SDE/DS/AS/RS版本-第6讲 并查集 并查集是什么? 并查集与 BFS 孰优孰劣?分别适合使用在什么场景? 如何利用并查集来解决实际问题? #### MLE/SDE/DS/AS/RS版本-第7讲 图上的拓展算法 拓扑排序怎么实现? 什么是最短路? 最短路算法有哪些? #### Floyd、Dijsktra、SPFA 算法应该使用哪一个? 什么是生成树? 如何求最小生成树? #### MLE/SDE/DS/AS/RS版本-第8讲 数据结构设计 如何利用前缀和与差分设计区间和问题? 如何设计懒惰删除的数据结构? 如何基于双向链表设计数据结构? 其他常见的数据结构设计 #### MLE/SDE/DS/AS/RS版本-第9讲 动态规划(上):一个物品下动态规划 如何使用记忆化搜索加快搜索效率? 动态规划的四要素是什么?如何从题目中获取到有效信息? 如何求解与序列有关的动态规划问题? 如何求解与坐标有关的动态规划问题? 背包问题、完全背包问题、多重背包问题怎么解?他们有什么差别和共性? #### MLE/SDE/DS/AS/RS版本-第10讲 动态规划(下):两个物品下动态规划 子串和子序列有什么差别? 如何求解最长公共子串/子序列问题? 如何求解编辑距离问题? 如何求解字符串匹配类问题? #### MLE/SDE/DS/AS/RS版本-第11讲 单调栈与单调队列 单调栈是什么? 单调栈可以解决什么样的问题? 如何利用的单调的思想解决问题? 如何从单调栈的思想推导到单调队列? #### MLE/SDE/DS/AS/RS版本-第12讲 字典树 字典树是什么? 字典树在操作系统中有什么应用? 字典树和哈希表的优劣? 如何使用字典树优化实际问题?





![[衡天云]爆款云服务器 低至12元/月](/hty.png)