〖课程介绍〗:
70 天彻底攻克算法,斩获大厂 Offer
7 q) L9 ~& @+ O0 b6 m& n
〖课程目录〗:
7 B( @) s+ l: M. w 预习周 10 周如何攻破算法面试?
; J3 ]5 g( l3 A. l “工欲善其事,必先利其器”,在开启训练营之前,看看我们要做哪些“热身运动”。
; Y: K+ ?( ]$ l; I7 ~* O 数据结构和算法知识总览
面试刷题都有哪些误区?
+ E* r; z4 k8 d& z b3 X4 e: g) H7 _; ^ 如何高效学习数据结构和算法?
如何快速高效地分析时间复杂度和空间复杂度?
8 W3 \" W8 k% h q9 w6 d3 ?- o
第1周 数组、链表、跳表
7 _' o( _% b/ J2 B 数组、链表属于线性表结构,所谓线性表,就是数据排成一条线一样的结构。
数组和链表原理讲解
) ~% @7 _# K5 ~9 \$ H. W6 q 面试热点数据结构跳表剖析
6 }) j1 \2 m% `0 J! {0 D T 常考面试题目精讲
栈、队列、优先队列、双端队列
我们熟知栈是“先入后出”,队列是“先入先出”,那这些数据结构是如何应用的呢?
# D: g# W Q& e1 F 栈和队列原理讲解
面试热点优先队列、双端队列剖析
常考面试题目精讲
9 {- v* a' y% r+ F
第2周 哈希表、映射、集合
在建造哈希表时不仅要设定一个“好”的哈希函数,而且要设定一种处理冲突的方法。
2 r! L* E4 s0 [, H7 V 哈希表、映射、集合的原理讲解
哈希表常见实践案例
常考面试题目精讲
树、二叉树、二叉搜索树
# U' S* f9 {& d! h 从链表到树的发展,你可以发现链表就是特殊化的树,而树又是特殊化的图。
/ b+ R8 h+ l, X) L9 ?: v 树是如何演进的?
" O' {3 z9 G' @3 U" r 二叉搜索树原理讲解
D( l% X# D2 V# x3 F( w) K 常考面试题目精讲
堆、二叉堆和图
堆是可以迅速找到一堆数中的最大或者最小值的数据结构。
堆和二叉堆原理讲解
7 Q7 O) @0 {9 `! X# E, i/ N 图的属性和分类
常考面试题目精讲
第3周 递归、分治和回溯
7 d3 f+ E0 L# f: E$ [ 树的面试题解法一般都是递归,熟练使用递归对于培养程序化思维是非常有帮助的。
$ y/ V9 |% ]+ V 递归基础知识及常见变形
, T2 q! H' j2 |2 P/ t 递归的高阶形式有哪些?
9 ?$ J, T& X- l+ T 分治与回溯的原理讲解
, L2 |- V4 X" e 常考面试题目精讲
$ R- b/ \/ K0 e& X8 [7 A& x
% w" S2 }* b( c) r$ H! n8 l2 u 第4周 深度、广度优先搜索
给你一个用户,如何找出这个用户所有的一度、二度、三度好友关系呢?
如何用代码实现 BFS、DFS?
BFS 和 DFS 有什么区别?
双向 BFS 原理剖析
常考面试题目精讲
$ x: R" i; [! i" d' D3 G& o 贪心算法与二分查找
- N: r8 P5 |5 s; U) c. q* I( r 贪心算法与动态规划的不同在于,它对每个子问题的解决方案都能作出选择,并且不能回退。
* i+ `. O, X' k 贪心算法的原理是什么?
贪心算法有哪些高级应用?
二分查找有哪些高级变形?
2 o( N) j5 A" E) N 常考面试题目精讲
第5周 期中周
期中复习、直播
期中考试
- Z. s" g* Q) z* x 第6周 动态规划
递推、状态的定义、最优子结构和状态转移方程是动态规划最核心的 4 个要素。
9 P% m% N$ D4 K2 G 动态规划的原理讲解
4 m F5 \. S6 p' I6 W) K$ _ 理解动态规划的关键点是什么?有哪些误区?
解析动态规划不同路径问题、背包问题
9 q% Z# K5 U/ A; C; b. ^( S% A 初级、中级动态规划题目精讲
/ r: |4 |# v' v2 G
; X% u4 |: ?! {6 ^: @7 ?8 X 第7周 并查集、字典树、红黑树和 AVL 树
AVL 树是一种高度平衡的二叉树,所以查找效率非常高也比较复杂;而红黑树只做到近似平衡,所以维护成本要低一些。
原理讲解及其基本实现
红黑树和 AVL 性能对比
/ j7 z5 t% c3 |5 g% m S9 G' i+ Z5 s 常考面试题目精讲
2 D- v# Z$ Y: E+ j
位运算、布隆过滤器和 LRU Cache
! W! u) y4 ~; d- R( H 对于一个很长的二进制向量和一系列随机函数,布隆过滤器可以用于检索一个元素是否在一个集合中。
有哪些常见的高级位运算操作?
0 i" K6 i- Q+ m 位运算在搜索、分治中的高级应用
% w# T/ J: U6 T3 G, ?) I% t 布隆过滤器在工业界有哪些应用?
0 O: n4 n4 n( e1 D6 n# _- V% ] 常考面试题目精讲
- Y# h- D$ V i# S! ? 排序算法
大部分编程语言都提供了排序函数,在平时项目中也经常会遇到排序,因此需要了解它们之间的区别。
各种常见排序的比较
6 {; c* I# w( K 各种排序算法的模版是什么?
高级排序常考面试题精讲
( B* @; z" K; X: K# W
6 d! F) `% m& X# c. e. E 第9周 字符串算法
有一个字符串 “BBC ABCDAB ABCDABCDABDE”,如何知道里面是否包含另一个字符串 “ABCDABD” 呢?
常见的高级字符串算法有哪些?
1 E7 B6 ^$ h9 \* A& e& X2 P 什么是字符串匹配算法?
* o+ C8 ?2 ^/ g' \ 常考面试题目精讲
第10周 期末周
期末复习串讲、直播
" t1 I' ~! g1 s" l' _ 期末考试
* |4 a! {6 L0 W$ f) J0 c% {〖视频截图〗: