大家好,这是《最强算法班》2020年的课程。在为期 2 个月的学习里,我会带大家从算法 零基础 或者计算机知识不深,学习所有基本的 数据结构和算法 ,并且交给大家 算法分析和算法设计 的思维。让大家在接下来的计算机科学和软件工程职业生涯的技术之路上 畅通无阻。
刷题不是本课程的目的。学习完本课程之后,有能力做困难的编程题仅仅是一个副作用。
想报名的同学加 QQ 群:538935270 或者我QQ:1070494510
https://creatcodebuild.github.io/brutal-algorithm-class/visual/visual.html
本课程5月19日(周二)开课,一共2个月(8周)24节直播课,每节课 80 分钟。课程还包括与老师的 一对一辅导 课。
每周直播课时间周二、周四、周六20:30-21:30
目前有 4 个套餐(支持花呗)
套餐 | 直播课 | 一对一辅导 | 价格 |
---|---|---|---|
A | ✔️ 32小时 | 4 小时 | 2200 |
B | ✔️ 32小时 | 8 小时 | 3100 |
C | ✔️ 32小时 | 12 小时 | 3600 |
D | ✔️ 32小时 | X | 1200 |
所有一对一的预约需要提前一天。2个月课程结束之后,没有预约并使用的一对一时间可在一周以内提出退款申请。
每次都有课后作业。你可以用C、CPP、Java、Go、Python、JavaScript、甚至 PHP 来作答。提交到 GitHub。每一份作业我都会认真批改。
- 数据结构与算法
- 数组
- 随机算法之洗牌算法 Shuffling
- 初探递归:递归与算法
- 递归之归并排序
- 初探复杂度分析:复杂度分析与算法,O(上限)、Θ(类似置信区间)、Ω(下限)
- 再谈递归:递归与数据结构
- 链表 Linked List
- 再谈复杂度分析:复杂度分析与数据结构
- 快排
- 数组的二分搜索
Let's plant trees!
- 树状结构
- 二叉树
- 深度优先搜索、广度优先搜索 DFS、BFS
- 前、中、后序遍历
- Level Order Traversal
- 二叉搜索树
- 树状结构的扁平化实现(用数组实现树)
- 堆排序 Heap Sort
- 优先级队列 Priority Queue
植树非一周之功!
- 平衡的二叉树
- AVL树
- 红黑树
中国有哈希!Hash is cooler than Hip Hop
- 哈希表
- 哈希集合
- Separate Chaining
- Open Addressing
- Dynamic Resizing
- 图 Graph
- 图的三种内存表示形式
- 图版本的深度优先搜索、广度优先搜索 DFS、BFS
- 最短路径 Shortest Path
- 迪杰斯特拉算法 Dijkstra's algorithm
- 贝尔曼-福特算法 Bellman Ford's Algorithm
继续学习图算法
- 拓扑排序 Topological Sort
- Minimum Spanning Tree
- Union Find
- Minimal Cut / Maximal Flow
- 子图匹配 Subgraph matching
动态规划,做一个时间刺客!
- 初探动态规划
- 递归与循环的关系
- 递归式循环
- 斐波那契数列
- 再看动态规划
- Subset Sum Problem
- 0-1 Knapsack Problem
- 子字符串问题
- 子序列问题
- Edit Distance
- 分词问题和 Unicode 算法 Word Break Problem and Unicode Algorithm
开启语言世界的大门
- 有限状态机
- 正则表达式
- 递归思维(函数式) vs 循环思维(过程式)
- 词法分析 Lexical Analysis
语法很重要
- Context Free Language
- 语法解析 Grammar Parsing
贪得无厌,必有算法!Greedy Algorithm
- 贪婪算法
- 压缩算法
- 哈夫曼编码
- 哈夫曼解码
这是一节算法课,语言不是根本问题。课件会用JS因为我有准备一些前端算法可视化。作业大家可以用C, CPP, Java, Go, Python, JavaScript, 甚至 PHP。我都可以批改。