
本课程是一套专为算法竞赛选手(如NOIP、ICPC)及希望深入掌握高级算法与数据结构的开发者量身打造的系统性实战训练营。课程以“夯实基础、攻克难点、掌握高级结构、实战拔高”为核心,系统性地串联起从贪心、搜索、动态规划等核心算法思想,到平衡二叉搜索树、多维树、复杂链式结构等高级数据结构的完整知识体系。你将不仅掌握算法的理论基础,更能通过“全自动物流系统设计”、“数据库设计”等大型综合项目,以及NOIP和ICPC模拟赛,深刻理解其底层原理,提升编程内功,最终具备解决复杂算法问题和应对高难度技术竞赛的能力。
核心学习路径
1. 核心算法思想入门
贪心算法:深入理解贪心策略的本质,学习最优化策略、构造法、二分答案等技巧,并探索其在图论(如导航系统)和搜索中的应用。
搜索基础:系统学习深度优先搜索(DFS)和广度优先搜索(BFS)的原理与实现,掌握状态、搜索树等核心概念,并通过“疫情传播”等实战案例加深理解。
动态规划(DP)基础:揭开动态规划的神秘面纱,掌握其两大模式(记忆化搜索、递推)和三大要素(阶段、状态、决策),理解最优子结构和无后效性两大前提,并通过01背包等经典问题入门。
2. 算法进阶与优化
搜索进阶:学习双向BFS、迭代加深搜索(IDS)和启发式搜索(如A*算法),掌握剪枝等优化技巧,让搜索算法更高效、更智能,解决“走迷宫”、“游戏自动寻路”等复杂问题。
动态规划进阶:深入剖析动态规划的常见模型,包括线性模型、串模型、区间模型、树形模型和状态压缩模型,并通过“青蛙过河”、“字符串折叠”、“谷仓涂色”等实战项目,掌握不同场景下的DP解题思路。
3. 高级数据结构
平衡二叉搜索树:从基础的二叉搜索树(BST)出发,深入探究其退化问题,并系统学习AVL树和红黑树的插入、删除、平衡化旋转等核心操作,理解其如何维持树的平衡。
近似平衡二叉树:学习Treap(树堆)、Splay树(伸展树)等实现简单、性能优越的平衡树替代方案,掌握其原理、操作及适用场景。
多维树形结构:掌握处理多维数据和区间查询的强大工具,包括字典树(Trie)、线段树和树状数组,理解它们在单词查询、区域统计等场景下的高效应用。
复杂链式结构:探索并查集、跳跃表(Skip List)和块状链表等高级链式结构,理解它们在集合合并、快速查找和大数据处理中的独特优势。
4. 综合实战与竞赛模拟
项目实战一:数据库设计:综合运用所学数据结构知识,从零开始设计一个简易的NoSQL数据库,涵盖需求分析、系统设计、数据结构选型到最终实现的全过程。
项目实战二:全自动物流系统设计:结合贪心、搜索等算法与Flutter、Node.js等技术,开发一个包含“物件装车”和“行车路线规划”功能的WebApp,体验算法在真实项目中的应用。
竞赛模拟:提供介于NOIP普及组与提高组之间、以及ICPC网络预选赛与区域赛之间难度的模拟赛题,帮助你在实战中检验学习成果,查漏补缺,提升竞赛水平。
课程亮点
体系完整,由浅入深:课程从基础算法讲起,逐步深入到高级数据结构和复杂算法模型,学习路径清晰,适合系统性学习和拔高。
原理剖析,拒绝黑盒:不仅教你“怎么用”,更深入讲解“为什么”,带你手推AVL树旋转、红黑树性质、DP状态转移方程等,真正理解算法内核。
项目驱动,实战为王:通过“数据库设计”和“物流系统”两大综合项目,将零散的知识点串联起来,培养解决复杂工程问题的能力。
对标竞赛,针对性强:课程内容深度和广度对标NOIP、ICPC等主流算法竞赛,并提供模拟赛,是竞赛选手备战的优质资源。
课程目录:
算法与数据结构
+—第10章二叉搜索树的优化:平衡二叉搜索树
| 10-1AVL树:没有它就没有Windows.mp4
| 10-2AVL树的插入,平衡化旋转以及平衡因子-认准一手加.mp4
| 10-3AVL树的删除,以及自底向上调整.mp4
| 10-4红黑树:应用最广泛的平衡树.mp4
| 10-5红黑树的插入,以及红黑性质.mp4
| 10-6红黑树的删除.mp4
| 10-7本章小结+作业说明.mp4
|
+—第11章平衡树的平替:近似平衡二叉树
| 11-10虚二叉树的插入,查找和删除.mp4
| 11-11虚二叉树的实战与复杂度分析.mp4
| 11-12各种平衡BST性能横向对比+适用场景分析.mp4
| 11-13本章小结+作业说明.mp4
| 11-1竞赛党来不及写红黑树怎么办?.mp4
| 11-2Treap=Tree+Heap.mp4
| 11-3Treap的插入和删除.mp4
| 11-4Treap的实战与复杂度分析.mp4
| 11-5Splay树:最节省空间的BST变体@.mp4
| 11-6Splay树的插入.mp4
| 11-7Splay树的合并和删除.mp4
| 11-8Splay树的实战与复杂度分析.mp4
| 11-9虚二叉树:限制区间的BST.mp4
|
+—第12章多维树形结构Multi-DimensionalTreeS
| 12-10树状数组的建立和查找.mp4
| 12-11树状数组的插入和删除.mp4
| 12-12树状数组的实战和复杂度分析.mp4
| 12-13本章小结+作业说明.mp4
| 12-1多维空间操作需要什么样的树.mp4
| 12-2字典树Trie:高效的单词查询结构.mp4
| 12-3Trie的表示,查找,插入和删除@.mp4
| 12-4Trie的实战与复杂度分析.mp4
| 12-5线段树:区域统计的强大工具.mp4
| 12-6线段树的构建与查找.mp4
| 12-7线段树的插入与删除.mp4
| 12-8线段树的实战与复杂度分析.mp4
| 12-9树状数组:压缩算法离不开它.mp4
|
+—第13章复杂链式结构ComplexLinkedStructure
| 13-10块状链表的查找,分裂和构建@.mp4
| 13-11块状链表的插入和删除.mp4
| 13-12块状链表的合并.mp4
| 13-13块状链表的实战与复杂度分析@.mp4
| 13-14本章小结+作业说明.mp4
| 13-1数据结构不止有树,链表也可以很高级.mp4
| 13-2并查集:合并+查找+集合.mp4
| 13-3并查集的合并与查找.mp4
| 13-4并查集的实战与复杂度分析.mp4
| 13-5跳跃表:互联网时代的优化万金油@.mp4
| 13-6跳跃表的构建和查找.mp4
| 13-7跳跃表的插入和删除-认准一手加.mp4
| 13-8跳跃表的实战与复杂度分析.mp4
| 13-9块状链表:和区块链是一回事吗.mp4
|
+—第14章数据结构综合实战&mdash_&mdash_数据库的设计
| 14-1什么是NoSQL数据库?.mp4
| 14-2需求分析1:表的建立及查询.mp4
| 14-3需求分析2:插入记录.mp4
| 14-4需求分析3:删除表和记录.mp4
| 14-5需求分析4:更新记录.mp4
| 14-6需求分析5:索引的建立及查询.mp4
| 14-7系统设计与数据结构选择.mp4
| 14-8实现与效果演示.mp4
| 14-9本章小结.mp4
|
+—第15章 NOIP模拟赛(介于普及组和提高组之间的难度)
| 15-1至15-5作业.docx
|
+—第16章 ICPC模拟赛(介于网络预选赛和亚洲区域赛之间的难度)
| 16-1至16-10作业.docx
|
+—第17章总结Conclusion
| 17-1课程总结与回顾.mp4
|
+—第1章引言Introduction
| 1-1学前必看&mdash_&mdash_这门课能给你什么.mp4
|
+—第2章贪心Greedy
| 2-10本章小结.mp4
| 2-10本章小结_20230531113312.mp4
| 2-11本章作业说明(看完说明再做题).mp4
| 2-11本章作业说明(看完说明再做题)_20230531113312.mp4
| 2-1贪心不等于我全都要@.mp4
| 2-1贪心不等于我全都要@_20230531113312.mp4
| 2-2朴素的贪心法(上)最优化策略.mp4
| 2-3朴素的贪心法(中)构造法.mp4
| 2-4朴素的贪心法(下)二分答案-认准一手加.mp4
| 2-5朴素贪心法的实战演练.mp4
| 2-6随机贪心法:多试几次也许会更好.mp4
| 2-7随机贪心法的实战演练.mp4
| 2-8图论中的贪心:实时导航系统.mp4
| 2-9搜索中的贪心:电脑鼠走迷宫大赛.mp4
| 2-9搜索中的贪心:电脑鼠走迷宫大赛_20230531113312.mp4
|
+—第3章搜索基础BasicSearching
| 3-1搜索法:看似枚举,但没那么简单.mp4
| 3-2搜索基础理论:状态,搜索树与状态关系图.mp4
| 3-3深度优先搜索(上):最常用的搜索方法.mp4
| 3-4深度优先搜索(下):常见的状态扩展模型.mp4
| 3-5深度优先搜索实战:中层领导不好当.mp4
| 3-6广度优先搜索:用空间换时间的搜索方法.mp4
| 3-7广度优先搜索实战:疫情传播问题.mp4
| 3-8本章小结.mp4
| 3-9本章作业说明(看完再做题).mp4
|
+—第4章动态规划基础DynamicProgrammingBasic
| 4-10本章小结.mp4
| 4-11本章作业说明(看完再做题).mp4
| 4-1动态规划DP:超越算法的思维.mp4
| 4-2一个简单的例子:跳方格.mp4
| 4-3DP两种模式:记忆化搜索,递推+枚举.mp4
| 4-4DP三要素:阶段,状态,决策.mp4
| 4-5DP两前提:最优子结构,无后效性.mp4
| 4-6稍微复杂一点的例子:01背包和多重背包.mp4
| 4-7DP分析流程1:划分阶段.mp4
| 4-8DP分析流程2:定义状态-认准一手加.mp4
| 4-9DP分析流程3:确定决策.mp4
|
+—第5章搜索进阶AdvancedSearching
| 5-10剪枝实战:木棍问题.mp4
| 5-11本章作业说明(看完再做题).mp4
| 5-11本章小结@.mp4
| 5-12作业说明.mp4
| 5-1双向广度优先搜索:你踏出1步,我踏出99步.mp4
| 5-2双向广度优先搜索实战:走迷宫问题.mp4
| 5-3迭代加深搜索:每一次都更深一点-.mp4
| 5-4迭代加深搜索实战:再战走迷宫问题.mp4
| 5-5启发式搜索:让盲目搜索变得智能@.mp4
| 5-6A算法:最经典的启发式搜索.mp4
| 5-7IDA算法:迭代加深的A.mp4
| 5-8启发式搜索实战:游戏自动寻路.mp4
| 5-9搜索优化:若要树长高,剪枝不可少-认准一手加.mp4
|
+—第6章动态规划进阶AdvancedDynamicProgramm
| 6-10常见模型分析5:状态压缩模型.mp4
| 6-11状态压缩模型实战:种草.mp4
| 6-12本章小结.mp4
| 6-13作业说明.mp4
| 6-1常见模型分析1:线性模型.mp4
| 6-2线性模型实战:青蛙过河.mp4
| 6-3常见模型分析2:串模型.mp4
| 6-4串模型实战:回文路径.mp4
| 6-5常见模型分析3:区间模型(上).mp4
| 6-6常见模型分析3:区间模型(下).mp4
| 6-7区间模型实战:字符串折叠.mp4
| 6-8常见模型分析4:树形模型-认准一手加.mp4
| 6-9树形模型实战:谷仓涂色.mp4
|
+—第7章算法综合实战&mdash_&mdash_全自动物流系统设计
| 7-10本章小结.mp4
| 7-1实战项目与章节内容简介-认准一手加.mp4
| 7-2需求分析:物件装车.mp4
| 7-3算法设计与实现:物件装车.mp4
| 7-4需求分析:行车路线规划.mp4
| 7-5算法设计与实现:行车路线@.mp4
| 7-6运行环境:基于Flutter和Nodejs的WebApp.mp4
| 7-7环境配置:VSCode+Flutter.mp4
| 7-8环境配置:VSCode+Nodejs@.mp4
| 7-9项目测试,调试,及最终效果演示@.mp4
|
+—第8章堆与堆的高级变种Heap
| 8-10本章小结+作业说明@.mp4
| 8-1优先队列与堆:高级数据结构的敲门砖.mp4
| 8-2堆,一种特殊的二叉树.mp4
| 8-3堆的两种构建方法@.mp4
| 8-4堆的插入.mp4
| 8-5堆的删除.mp4
| 8-6堆排序.mp4
| 8-7堆的实战与复杂度分析.mp4
| 8-8二项堆:可以合并的堆.mp4
| 8-9斐波那契堆:最复杂最强大的堆.mp4
|
+—第9章二叉搜索树基础BinarySearchTree
| 9-1二叉搜索树BST:为何它如雷贯耳.mp4
| 9-2BST的表示法.mp4
| 9-3BST的插入和查找.mp4
| 9-4BST的删除.mp4
| 9-5BST的灵活应用&mdash_&mdash_第K小元素-认准一手加.mp4
| 9-6BST的实战与复杂度分析.mp4
| 9-7拒绝BST退化:平衡二叉搜索树.mp4
| 9-8初识平衡化旋转.mp4
| 9-9本章小结+作业说明.mp4
|
下载地址:
感谢您的来访,获取更多精彩文章请收藏本站。


















