算法与数据结构体系课
从0到工作5年,面试、进大厂、搭建知识体系、拓展技术上限
你不再需要其它算法与数据结构课程了
为什么学算法已经是一个不该该问的题目了,从功利角度,年夜厂必考你必学;从长久角度,算法将决定你的技术上限
课程目录
第1周 线性查找法
第1章 欢迎大家来到算法与数据结构的世界
第2章 线性查找法
第2周 排序基础
第1章 选择排序法
第2章 插入排序法
第3周 数据结构基础:动态数组,栈和队列-
第1章 数据结构基础:不要小瞧数组
第2章 栈和队列
第3章 习题补充:栈和队列其他习题
第4周 动态数据结构基础:链表
第1章 最基础的动态数据结构:链表
第2章 透过链表看递归
第3章 补充 链表相关习题
第5周 归并排序法
1-1 归并排序法的原理.mp4
1-2 归并过程.mp4
1-3 实现归并过程.mp4
1-4 实现归并排序法.mp4
1-5 归并排序法的微观解读.mp4
1-6 作业:在程序上调试跟踪归并排序法.mp4
1-7 在程序上调试跟踪归并排序法.pdf
1-8 归并排序法的复杂度分析.mp4
2-1 在有序数组,让归并排序法成为 O(n) 算法.mp4
2-10 归并排序法小结.mp4
2-2 使用插入排序法优化归并排序法.mp4
2-3 归并排序法的内存操作优化.mp4
2-4 自底向上的归并排序.mp4
2-5 实现自底向上的归并排序.mp4
2-6 作业:使用插入排序法优化自底向上的归并排序.mp4
2-7 使用插入排序法,优化自底向上的归并排序.pdf
2-8 数组的逆序对数量问题.mp4
2-9 快速求解数组的逆序对数量.mp4
第6周 快速排序法
1-1 快速排序法的原理.mp4
1-10 作业解析:用算法生成一个特殊的测试用例.pdf
1-2 Partition.mp4
1-3 第一版快速排序法.mp4
1-4 作业:深入理解快速排序的递归过程.mp4
1-5 作业解析:使用插入排序法优化快速排序.pdf
1-6 第一版快速排序法的问题.mp4
1-7 为快速排序添加随机化.mp4
1-8 两个作业:深入玩转快速排序.mp4
1-9 作业解析:只创建一个 Random 类.pdf
2-1 快速排序算法还有问题.mp4
2-10 和 Select K 相关的三个问题.pdf
2-11 快速排序小结.mp4
2-2 双路快速排序法.mp4
2-3 实现双路快速排序法.mp4
2-4 快速排序算法的复杂度分析.mp4
2-5 三路快速排序法.mp4
2-6 实现三路快速排序法.mp4
2-7 作业:一道面试问题,Sort Colors.mp4
2-8 Leetcode 75:Sort Colors.pdf
2-9 作业:Select K 问题.mp4
第7周 二分查找法
1-1 二分查找法.mp4
1-2 二分查找法的递归写法.mp4
1-3 二分查找法的非递归写法.mp4
1-4 作业:Select K 的非递归写法.mp4
1-5 非递归实现 Select K 算法.pdf
1-6 换个定义实现二分查找法.mp4
1-7 作业:换个定义实现算法.mp4
1-8 改变定义重写 Select K 算法.pdf
1-9 改变定义重写归并排序算法.pdf
2-1 二分查找法的变种:upper.mp4
2-10 二分查找法总结:二分查找模板.mp4
2-11 作业解析:换个方式实现二分查找.pdf
2-2 实现 upper.mp4
2-3 二分查找法的变种:ceil.mp4
2-4 作业:二分查找法的变种:lower_ceil.mp4
2-6 二分查找法的变种:lower.mp4
2-7 实现 lower 和二分查找的大坑.mp4
2-8 作业:二分查找法的变种:lower_floor 和 upper_floor.mp4
2-9 作业解析:实现 lower_floor 和 upper_floor.pdf
3-1 Leetcode 875.mp4
3-2 编程实现 Leetcode 875.mp4
3-3 作业:Leetcode 1011.mp4
3-4 解决 Leetcode 1011.pdf
3-5 更多二分查找相关问题.mp4
第8周 二分搜索树
1-1 为什么要研究树结构.mp4
1-10 深入理解二分搜索树的前中后序遍历.mp4
1-11 二分搜索树前序遍历的非递归实现.mp4
1-12 二分搜索树的层序遍历.mp4
1-13 删除二分搜索树的最大元素和最小元素.mp4
1-14 删除二分搜索树的任意元素.mp4
1-15 更多二分搜索树相关话题.mp4
1-2 二分搜索树基础.mp4
1-3 向二分搜索树中添加元素.mp4
1-4 改进添加操作:深入理解递归终止条件.mp4
1-5 作业:和二分搜索树的添加相关的两个问题.mp4
1-7 二分搜索树的查询操作.mp4
1-8 二分搜索树的前序遍历.mp4
1-9 二分搜索树的中序遍历和后序遍历.mp4
2-1 集合基础和基于二分搜索树的集合实现.mp4
2-2 基于链表的集合实现.mp4
2-3 集合类的复杂度分析.mp4
2-4 Leetcode中的集合问题和更多集合相关问题.mp4
2-5 映射基础.mp4
2-6 基于链表的映射实现.mp4
2-7 基于二分搜索树的映射实现.mp4
2-8 映射的复杂度分析和更多映射相关问题.mp4
第9周 堆,优先队列和堆排序
1-1 什么是优先队列.mp4
1-10 实现最小堆.pdf
1-2 堆的基础表示.mp4
1-3 向堆中添加元素和Sift Up.mp4
1-4 从堆中取出元素和Sift Down.mp4
1-5 最直观的堆排序.mp4
1-6 Heapify 和 Replace.mp4
1-7 实现 Heapify.mp4
1-8 优化的堆排序.mp4
1-9 作业:最小堆.mp4
2-1 基于堆的优先队列.mp4
2-2 Top K 问题.mp4
2-3 作业:使用优先队列解决 Select K 问题.mp4
2-4 使用优先队列的思想解决 Leetcode 215.pdf
2-5 使用 Java 中的 PriorityQueue.mp4
2-6 使用快排思想和优先队列解决 Top K 问题的比较.mp4
2-7 和堆相关的更多话题和广义队列.mp4
第10周 冒泡排序,希尔排序和排序算法大总结
1-1 冒泡排序的基本思想.mp4
1-2 实现冒泡排序法.mp4
1-3 冒泡排序的优化.mp4
1-4 冒泡排序还能优化.mp4
1-5 作业:换个方式实现冒泡排序.mp4
1-6 换个方式实现冒泡排序.pdf
1-7 冒泡排序的特点.mp4
2-1 插入排序法和冒泡排序法的启迪.mp4
2-2 希尔排序法的基本原理.mp4
2-3 实现希尔排序法.mp4
2-4 希尔排序法的性能.mp4
2-5 换个方式实现希尔排序法.mp4
2-6 步长序列.mp4
2-7 希尔排序和超参数.mp4
3-1 基于比较排序算法大总结.mp4
3-2 什么是排序算法的稳定性.mp4
3-3 基础排序算法的稳定性.mp4
3-4 高级排序算法的稳定性.mp4
第11周 线段树,Trie 和并查集
1-1 什么是线段树.mp4
1-2 线段树基础表示.mp4
1-3 创建线段树.mp4
1-4 线段树中的区间查询.mp4
1-5 Leetcode上线段树相关的问题.mp4
1-6 线段树中的更新操作.mp4
1-7 更多线段树相关的话题.mp4
2-1 什么是Trie字典树.mp4
2-2 Trie字典树基础.mp4
2-3 Trie字典树的查询.mp4
2-4 Trie字典树的前缀查询.mp4
2-5 Trie字典树和简单的模式匹配.mp4
2-6 Trie字典树和字符串映射.mp4
2-7 更多和Trie字典树相关的话题.mp4
2-8 基于哈希表或者数组的 Trie.pdf
3-1 什么是并查集.mp4
3-2 Quick Find.mp4
3-3 Quick Union.mp4
3-4 基于size的优化.mp4
3-5 基于rank的优化.mp4
3-6 路径压缩.mp4
3-7 更多和并查集相关的话题.mp4
第12周 AVL 树和红黑树
1-1 平衡树和AVL.mp4
1-2 计算节点的高度和平衡因子.mp4
1-3 检查二分搜索树性质和平衡性.mp4
1-4 旋转操作的基本原理.mp4
1-5 左旋转和右旋转的实现.mp4
1-6 LR 和 RL.mp4
1-7 从AVL树中删除元素.mp4
1-8 基于AVL树的集合和映射.mp4
2-1 红黑树与2-3树.mp4
2-2 2-3树的绝对平衡性.mp4
2-3 红黑树与2-3树的等价性.mp4
2-4 红黑树的基本性质和复杂度分析.mp4
2-5 保持根节点为黑色和左旋转.mp4
2-6 颜色翻转和右旋转.mp4
2-7 红黑树中添加新元素.mp4
2-8 红黑树的性能测试.mp4
2-9 更多红黑树相关的话题.mp4
第13周 哈希表和 SQRT 分解
1-1 哈希表基础.mp4
1-2 哈希函数.mp4
1-3 Java中的hashCode方法.mp4
1-4 链地址法 Seperate Chaining.mp4
1-5 实现属于我们自己的哈希表.mp4
1-6 哈希表的动态空间处理与复杂度分析.mp4
1-7 哈希表更复杂的动态空间处理方法.mp4
1-8 更多哈希冲突的处理方法.mp4
第14周 非比较排序
1-1 什么是计数排序 (2).mp4
1-2 使用计数排序解决力扣 75 号问题 (2).mp4
1-3 更一般的计数排序算法 (2).mp4
1-4 实现更一般的计数排序算法 (2).mp4
1-5 计数排序算法的重要性质:稳定性 (2).mp4
1-6 验证计数排序算法的稳定性 (2).mp4
第15周-模式匹配
1-1 字符串匹配问题.mkv
1-2 实现字符串暴力匹配.mkv
1-4 哈希是一种思想——字符串哈希解决匹配问题.mkv
1-5 求解段式回文问题.mkv
1-6 使用哈希思想求解段式回文.mkv
2-1 快乐前缀问题.mp4
2-2 使用哈希法求解快乐前缀问题.mp4
2-3 重复的 DNA 问题.mp4
2-4 滚动哈希法.mp4
2-5 使用滚动哈希求解重复 DNA 问题.mp4
2-6 从滚动哈希到 Rabin-Karp 算法.mp4
2-7 实现 Rabin-Karp 算法.mp4
2-8 Rabin-Karp 算法的性能分析.mp4
说明.png
资料.zip
更多知识
-
抖音直播打号起号实时录屏,全程4小时起号操作,毫无保留
你是不是入局抖音直播,却卡在“起号难、打号慢”的第一关?精心筹备开播,要么直播间零人在线、冷冷清清,要么流量忽高忽低、留不住人;跟着教程学起号,却全是过时理论,实操环节一笔带过,自己上手依旧无从下手;
分半
40 阅读
-
绩效管理与团队激励实战,即学即用,成为一个真正的绩效激励专家
课程介绍:掌握诊断企业绩效管理有效性的评测方法学会制定支撑于战略的绩效目标(4+7)解决绩效考核与排名的公平性与接受度问题学会设计从战略到目标到考核到分钱的方案掌握制定薪酬包并科学分配薪酬包的方案拥有
★芭比々娃娃
43 阅读
-
小红书带货达人启航计划,从0-1运营小红书账号
想做小红书带货达人,却卡在起点无从下手?看着别人靠小红书带货月入过万,自己却连账号定位都搞不清,发布的笔记无人问津、没有流量;不懂平台规则、不会做内容、不会选品带货,哪怕盲目跟风发笔记,也始终无法实现
你陪我醉i
76 阅读
-
抖音35W粉丝博主AI解压视频制作教学,从零开始用AI打造爆款解压视频,涨粉变现两不误
自从有了AI,在创意方面真的是只有我们想不到,没有做不到的。解压类视频一直是涨粉快的赛道,像修马蹄、搭积木这类内容,大家看着就觉得放松。今天给大家分享抖音某大佬的解压视频制作教学,一个超适合新手的,非
等风也等你
57 阅读
-
小红书带货达人实战营:账号注册定位、内容创作、选品策略、带货技巧、流量运营等
小红书带货达人实战营:账号注册定位、内容创作、选品策略、带货技巧、流量运营等课程简介本课程是专为新手量身打造的小红书带货达人启航计划,聚焦从0到1运营小红书账号的全流程实战。课程摒弃空泛理论,全程实操
轻吟潜唱丶华灯初上
42 阅读
-
付费文1+2:年轻人还能抓住的几大隐形翻身机会:打开思路,发现那些闷声发财的冷门赛道
付费文1+2:年轻人还能抓住的几大隐形翻身机会:打开思路,发现那些闷声发财的冷门赛道文章介绍本课程聚焦当下年轻人还能抓住的几大隐形翻身机会,深度剖析“涉外经济”与“银发经济”两大红利赛道。第一部分围绕
那思念爱尖叫
68 阅读
-
一张照片秒变N种专属表情包,三步搞定可爱搞怪治愈风,从此斗图聊天不再到处存别人图
一张照片秒变N种专属表情包,三步搞定可爱搞怪治愈风,从此斗图聊天不再到处存别人图课程简介这是一套教你用AI技术零门槛制作专属表情包的趣味实操课程。只需一张普通照片,通过简单的三步流程——上传照片、选择
哭了,谁疼
33 阅读
-
六大豆包AI修图指令全公开:高清画质逼真细节一键生成,每张图都像专业场地实拍大片
六大豆包AI修图指令全公开:高清画质逼真细节一键生成,每张图都像专业场地实拍大片课程简介这是一套聚焦AI生图实战的技巧课程,系统传授利用豆包AI生成专业级场景画面的六个核心指令。课程涵盖六大不同风格的
一开始就结束
81 阅读
撰写回复